Safe Haskell | Safe-Inferred |
---|
Data.EnumFun.Strict
Description
Finitely represented total EnumMaps. Comprises a partial EnumMap and a default value. Has Applicative and Monad instances, unlike EnumMap.
Inspired by Conal's Data.TotalMap: http://hackage.haskell.org/package/total-map
Documentation
Total EnumMap.
Instances
Typeable2 EnumFun | |
Enum k => Monad (EnumFun k) | |
Functor (EnumFun k) | |
(Functor (EnumFun k), Enum k) => Applicative (EnumFun k) | |
Foldable (EnumFun k) | |
(Functor (EnumFun k), Foldable (EnumFun k)) => Traversable (EnumFun k) | |
Eq v => Eq (EnumFun k v) | |
(Eq (EnumFun k v), Ord v) => Ord (EnumFun k v) | |
(Enum k, Show k, Show v) => Show (EnumFun k v) | |
(Enum k, Monoid v) => Monoid (EnumFun k v) |
trim :: Eq v => EnumFun k v -> EnumFun k vSource
Optimise an EnumFun
, weeding out any explicit default values.
A semantic no-op, i.e., (!) . trim == (!)
.