TrieMap-0.7.2: Automatic type inference of generalized tries.

Data.TrieMap.Class

Documentation

newtype TMap k a Source

Constructors

TMap 

Fields

getTMap :: TrieMap (Rep k) (Elem a)
 

Instances

TKey k => Functor (TMap k) 
TKey k => Foldable (TMap k) 
TKey k => Traversable (TMap k) 
TKey k => ReprT (TMap k) 
(Eq k, TKey k, Eq a) => Eq (TMap k a) 
(Ord k, TKey k, Ord a) => Ord (TMap k a) 
(Show k, Show a, TKey k) => Show (TMap k a) 
TKey k => Monoid (TMap k a) 

newtype TSet a Source

Constructors

TSet (TMap a ()) 

Instances

TKey a => Eq (TSet a) 
(TKey a, Ord a) => Ord (TSet a) 
(TKey a, Show a) => Show (TSet a) 
TKey a => Monoid (TSet a) 

class (Repr k, TrieKey (Rep k) (TrieMap (Rep k))) => TKey k Source

Instances

(Repr k, TrieKey (Rep k) (TrieMap (Rep k))) => TKey k 

class (ReprT f, TrieKeyT (RepT f) (TrieMapT (RepT f))) => TKeyT f Source

Instances

(ReprT f, TrieKeyT (RepT f) (TrieMapT (RepT f))) => TKeyT f 

type family Rep a Source

type family TrieMap k :: * -> *Source

class Ord k => TrieKey k m | m -> kSource

Instances

TrieKey Word32 WordMap 
TrieKey () Maybe 
TrieKey k (TrieMap k) => TrieKey [k] (RadixTrie k) 
TrieKey k (TrieMap k) => TrieKey (I0 k) (IMap k) 
TrieKey (U0 r) (M r) 
TrieKey k (TrieMap k) => TrieKey (Rev k) (ReverseMap k) 
Ord k => TrieKey (Ordered k) (OrdMap k) 
TKey k => TrieKey (Key k) (KeyMap k) 
(m ~ TrieMapT (PF k), Regular k, Functor (PF k), TrieKeyT (PF k) m) => TrieKey (Reg k) (RegMap k m) 
(TrieKey a m, TrieKey b (TrieMap b)) => TrieKey (Either a b) (UMap m b) 
(TrieKey a m, TrieKey b (TrieMap b)) => TrieKey (a, b) (PMap m b) 
(m ~ TrieMap k, TrieKey k m) => TrieKey (K0 k r) (KMap m r) 
(OrdT f, TrieKeyT f (TrieMapT f), TrieKey k (TrieMap k)) => TrieKey (L f k) (RadixTrie f k) 
(TrieKeyT f m, TrieKey k (TrieMap k)) => TrieKey (App f k) (AppMap m k) 
(Fam phi, HFunctor phi (PF phi), El phi ix, HTrieKeyT phi (PF phi) m) => TrieKey (Family phi ix) (FamMap phi m ix) 
(TrieKeyT f m1, TrieKeyT g m2, TrieKey k (TrieMap k)) => TrieKey (:*: f g k) (PMap m1 m2 k) 
(TrieKeyT f m1, TrieKeyT g m2, TrieKey k (TrieMap k)) => TrieKey (:+: f g k) (UnionMap m1 m2 k) 
(TrieKeyT f m, Functor f, TrieKeyT g (TrieMapT g), TrieKey k (TrieMap k)) => TrieKey (O f g k) (CompMap m g k)