Type-indexed maps.
Maps where keys are types and values can have types depending on their keys.
Type-indexed maps
Maps whose keys are types.
This package includes:
a dynamic type map using GHC's
Typeable
class, with aProxy
-based API (Data.TypeMap.Dynamic
) or aTypeApplications
-based API (Data.TypeMap.Dynamic.Alt
); Supports arbitrary, user-defined mappings between keys and types of values via defunctionalization.a static type map, whose type is indexed by its list of keys (there are actually multiple implementations with different underlying representations (
[]
,Map
,Vector
)).
Example using the dynamically-typed interface.
See also this package's description on Hackage.
Related
- typerep-map, a more performant dynamic type map.
Internal module policy
Modules under Data.TypeMap.Internal
are not subject to any versioning policy. Breaking changes may apply to them at any time.
If something in those modules seems useful, please report it or create a pull request to export it from an external module.