Improve `StorageContains`
Description
Problem: in the current implementation of StorageContains
I can't
write
type StorageC store meta = StorageContains store
[ "field" := meta
, ...
]
meaning
type StorageC store meta =
( StoreHasField store field meta
, ...
)
because with polymorphic meta
, StorageContains
cannot deduce which
exactly case do we mean.
Solution: add a special case in the type family for such situations, so
that "field" := Identity meta
means StoreHasField store field meta
.
Related issue(s)
Resolves #
✅ Checklist for your Merge Request
Related changes (conditional)
-
Tests (see short guidelines)
-
If I added new functionality, I added tests covering it. -
If I fixed a bug, I added a regression test to prevent the bug from silently reappearing again.
-
-
Documentation
Stylistic guide (mandatory)
-
My commits comply with the following policy. -
My code complies with the style guide.
Edited by Konstantin Ivanov