ConsenSysMesh / ConsenSysMesh/Fae
Hereditary `Exportable`
- Dominant language
- Haskell
- Stars
- 6
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
The `Exportable` class is not hereditary in the sense that, if you have a product type whose fields are `Exportable` but _not_ known to be `Generic`, you can't derive an instance of `Exportable` for the whole product. The `EGeneric` class _is_ hereditary in this way, but not everything actually is `EGeneric` because not everything is `Generic`; notable offenders include containers like `Map`. We need to essentially reorganize the entire circle of escrow types, the `Exportable` class, and its supporting `EGeneric`, `EGeneric1`, and `ESerializable` classes, so that it's possible to have our cake (the current structuring of `EGeneric`, which uses `Serialize`'s generic encoder and decoder rather than manually encoding `Rep`s) and eat it too.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.