| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Data.Trie.Map.Internal
Contents
Description
This module exposes internal representation of TMap.
TMap has one invariant condition:
- Subtrees of an
TMapshould not be empty.
For example, consider following tree structure which is valid:
> fromList [("a",1), ("aa", 2), ("bc", 3)]
Root
'a' -> 1
'a' -> 2
'b' ->
'c' -> 3Adding redundant node which represents empty map does not change
what an TMap represents.
Root
'a' -> 1
'a' -> 2
'b' ->
'c' -> 3
'd' ->
'e' ->
'f' ->But such TMap should not exist because it confuses Eq and Ord
instances and null function.
Types
Mapping from [c] to a implemented as a trie.
This type serves the almost same purpose of Map [c] a,
but can be looked up more efficiently.
Instances
Instances
| Eq c => Eq2 (Node c) Source # | |
| Ord c => Ord2 (Node c) Source # | |
Defined in Data.Trie.Map.Hidden | |
| Foldable (Node c a) Source # | |
Defined in Data.Trie.Map.Hidden Methods fold :: Monoid m => Node c a m -> m # foldMap :: Monoid m => (a0 -> m) -> Node c a a0 -> m # foldMap' :: Monoid m => (a0 -> m) -> Node c a a0 -> m # foldr :: (a0 -> b -> b) -> b -> Node c a a0 -> b # foldr' :: (a0 -> b -> b) -> b -> Node c a a0 -> b # foldl :: (b -> a0 -> b) -> b -> Node c a a0 -> b # foldl' :: (b -> a0 -> b) -> b -> Node c a a0 -> b # foldr1 :: (a0 -> a0 -> a0) -> Node c a a0 -> a0 # foldl1 :: (a0 -> a0 -> a0) -> Node c a a0 -> a0 # toList :: Node c a a0 -> [a0] # length :: Node c a a0 -> Int # elem :: Eq a0 => a0 -> Node c a a0 -> Bool # maximum :: Ord a0 => Node c a a0 -> a0 # minimum :: Ord a0 => Node c a a0 -> a0 # | |
| (Eq c, Eq a) => Eq1 (Node c a) Source # | |
| (Ord c, Ord a) => Ord1 (Node c a) Source # | |
Defined in Data.Trie.Map.Hidden | |
| Traversable (Node c a) Source # | |
Defined in Data.Trie.Map.Hidden | |
| Functor (Node c a) Source # | |
| (Show a, Show c, Show r) => Show (Node c a r) Source # | |
| (NFData c, NFData a, NFData r) => NFData (Node c a r) Source # | |
Defined in Data.Trie.Map.Hidden | |
| (Eq a, Eq c, Eq r) => Eq (Node c a r) Source # | |
| (Ord a, Ord c, Ord r) => Ord (Node c a r) Source # | |
Defined in Data.Trie.Map.Hidden | |