Safe Haskell | None |
---|---|
Language | Haskell2010 |
Data.TypeRep.CMap
Synopsis
- newtype TypeRepMap (f :: k -> *) = TypeRepMap {
- unMap :: Map TypeRep Any
- empty :: TypeRepMap f
- insert :: forall a f. Typeable a => f a -> TypeRepMap f -> TypeRepMap f
- keys :: TypeRepMap f -> [TypeRep]
- lookup :: forall a f. Typeable a => TypeRepMap f -> Maybe (f a)
- size :: TypeRepMap f -> Int
Documentation
newtype TypeRepMap (f :: k -> *) #
Map-like data structure with types served as the keys.
Constructors
TypeRepMap | |
Fields
|
Instances
NFData (TypeRepMap f) # | |
Defined in Data.TypeRep.CMap Methods rnf :: TypeRepMap f -> () |
empty :: TypeRepMap f #
Empty structure.
insert :: forall a f. Typeable a => f a -> TypeRepMap f -> TypeRepMap f #
Inserts the value with its type as a key.
keys :: TypeRepMap f -> [TypeRep] #
lookup :: forall a f. Typeable a => TypeRepMap f -> Maybe (f a) #
Looks up the value at the type. >>> let x = lookup $ insert (11 :: Int) empty >>> x :: Maybe Int Just 11 >>> x :: Maybe () Nothing
size :: TypeRepMap f -> Int #