Documentation
class OrdT f => TrieKeyT f m | m -> f, f -> mSource
TrieKeyT [] RadixTrie | |
TrieKeyT I0 IMap | |
TrieKeyT U0 M | |
TrieKeyT Rev ReverseMap | |
TrieKey k1 m1 => TrieKeyT (Either k1) (UMap m1) | |
TrieKey k1 m1 => TrieKeyT ((,) k1) (PMap m1) | |
(m ~ TrieMap k, TrieKey k m) => TrieKeyT (K0 k) (KMap m) | |
(m ~ TrieMapT f, OrdT f, TrieKeyT f m) => TrieKeyT (L f) (RadixTrie f) | |
TrieKeyT f m => TrieKeyT (App f) (AppMap m) | |
(TrieKeyT f m1, TrieKeyT g m2) => TrieKeyT (:*: f g) (PMap m1 m2) | |
(TrieKeyT f m1, TrieKeyT g m2) => TrieKeyT (:+: f g) (UnionMap m1 m2) | |
(TrieKeyT f m, Functor f, TrieKeyT g (TrieMapT g)) => TrieKeyT (O f g) (CompMap m g) |
(f r) :*: (g r) |
(Functor f, Functor g) => Functor (:*: f g) | |
(EqT f, EqT g) => EqT (:*: f g) | |
(OrdT f, OrdT g) => OrdT (:*: f g) | |
(ReprT f[agNI], ReprT g[agNJ]) => ReprT (:*: f[agNI] g[agNJ]) | |
(TrieKeyT f m1, TrieKeyT g m2) => TrieKeyT (:*: f g) (PMap m1 m2) | |
(EqT f, EqT g, Eq r) => Eq (:*: f g r) | |
(OrdT f, OrdT g, Ord r) => Ord (:*: f g r) | |
(Show (f r), Show (g r)) => Show (:*: f g r) | |
(Repr a[agNQ], ReprT f[agNI], ReprT g[agNJ]) => Repr (:*: f[agNI] g[agNJ] a[agNQ]) | |
(TrieKeyT f m1, TrieKeyT g m2, TrieKey k (TrieMap k)) => TrieKey (:*: f g k) (PMap m1 m2 k) |
(Functor f, Functor g) => Functor (:+: f g) | |
(EqT f, EqT g) => EqT (:+: f g) | |
(OrdT f, OrdT g) => OrdT (:+: f g) | |
(ReprT f[agZ4], ReprT g[agZ5]) => ReprT (:+: f[agZ4] g[agZ5]) | |
(TrieKeyT f m1, TrieKeyT g m2) => TrieKeyT (:+: f g) (UnionMap m1 m2) | |
(EqT f, EqT g, Eq r) => Eq (:+: f g r) | |
(OrdT f, OrdT g, Ord r) => Ord (:+: f g r) | |
(Show (f r), Show (g r)) => Show (:+: f g r) | |
(Repr a[agZe], ReprT f[agZ4], ReprT g[agZ5]) => Repr (:+: f[agZ4] g[agZ5] a[agZe]) | |
(TrieKeyT f m1, TrieKeyT g m2, TrieKey k (TrieMap k)) => TrieKey (:+: f g k) (UnionMap m1 m2 k) |
List [f r] |
Functor f => Functor (L f) | |
EqT f => EqT (L f) | |
OrdT f => OrdT (L f) | |
ReprT f[agET] => ReprT (L f[agET]) | |
(m ~ TrieMapT f, OrdT f, TrieKeyT f m) => TrieKeyT (L f) (RadixTrie f) | |
(EqT f, Eq r) => Eq (L f r) | |
(OrdT f, Ord r) => Ord (L f r) | |
Show (f r) => Show (L f r) | |
(Repr a[agEY], ReprT f[agET]) => Repr (L f[agET] a[agEY]) | |
(OrdT f, TrieKeyT f (TrieMapT f), TrieKey k (TrieMap k)) => TrieKey (L f k) (RadixTrie f k) |
O (f (g r)) |
(Functor f, Functor g) => Functor (O f g) | |
(EqT f, EqT g) => EqT (O f g) | |
(OrdT f, OrdT g) => OrdT (O f g) | |
(ReprT f[ah89], ReprT g[ah8a]) => ReprT (O f[ah89] g[ah8a]) | |
(TrieKeyT f m, Functor f, TrieKeyT g (TrieMapT g)) => TrieKeyT (O f g) (CompMap m g) | |
(EqT f, EqT g, Eq r) => Eq (O f g r) | |
(OrdT f, OrdT g, Ord r) => Ord (O f g r) | |
(Repr a[ah8f], ReprT f[ah89], ReprT g[ah8a]) => Repr (O f[ah89] g[ah8a] a[ah8f]) | |
(TrieKeyT f m, Functor f, TrieKeyT g (TrieMapT g), TrieKey k (TrieMap k)) => TrieKey (O f g k) (CompMap m g k) |
partEithers :: [((f :+: g) r, a)] -> ([(f r, a)], [(g r, a)])Source
type Comparator a = a -> a -> OrderingSource
class EqT f => OrdT f whereSource
compareT0 :: Comparator a -> Comparator (f a)Source