Allow users to extend `SchemaTypeRegistry`
- Dominant language
- Rust
- Stars
- 132
- Forks
- 167
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 110
Description
`SchemaTypeRegistry` provides a way to register data types (either `Word` or `Felt` sized) that can later be parsed from string or displayed in a human readable form. This is mostly based on whether the types implement a specific trait which defines this functionality.
[Currently](https://github.com/0xMiden/miden-base/blob/next/crates/miden-protocol/src/account/component/storage/type_registry.rs#L20), types are hardcoded and the registry itself is not extensible. We need to find a way to let users extend the registry with their own types so that applications can interpret storage data and display it accordingly. Some things to keep in mind:
- We'll need to pass a reference to `SchemaTypeRegistry` around when serializing/deserializing account component metadata
- Not sure whether leveraging https://github.com/0xMiden/compiler/issues/789 is possible, but for user-compiled types this would be great to have
Contributor guide
Assessment
This issue has not been assessed yet.