Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data HashMapChildren c p a = HashMapChildren {
- hashMapNode :: Maybe a
- hashMapChildren :: !(Maybe (c p a))
- newtype HashMapStep c p a = HashMapStep {
- unHashMapStep :: HashMap p (HashMapChildren c p a)
- insert :: (Hashable p, Eq p, Trie NonEmpty p c, Monoid (c p a)) => NonEmpty p -> a -> HashMapStep c p a -> HashMapStep c p a
- empty :: HashMapStep c p a
- singleton :: Hashable p => p -> a -> HashMapStep c p a
- newtype HashMapTrie p a = HashMapTrie {
- unHashMapTrie :: HashMapStep HashMapTrie p a
- keys :: (Hashable p, Eq p) => HashMapTrie p a -> [NonEmpty p]
- elems :: HashMapTrie p a -> [a]
- subtrie :: (Hashable p, Eq p) => NonEmpty p -> HashMapTrie p a -> Maybe (HashMapTrie p a)
- match :: (Hashable p, Eq p) => NonEmpty p -> HashMapTrie p a -> Maybe (NonEmpty p, a, [p])
- matches :: (Hashable p, Eq p) => NonEmpty p -> HashMapTrie p a -> [(NonEmpty p, a, [p])]
One Step
data HashMapChildren c p a Source
HashMapChildren | |
|
Functor (c p) => Functor (HashMapChildren c p) Source | |
Foldable (c p) => Foldable (HashMapChildren c p) Source | |
Traversable (c p) => Traversable (HashMapChildren c p) Source | |
(Eq a, Eq (c p a)) => Eq (HashMapChildren c p a) Source | |
(Data a, Data (c p a), Typeable (* -> * -> *) c, Typeable * p) => Data (HashMapChildren c p a) Source | |
(Show a, Show (c p a)) => Show (HashMapChildren c p a) Source | |
Generic (HashMapChildren c p a) Source | |
Monoid (c p a) => Monoid (HashMapChildren c p a) Source | |
(NFData (c p a), NFData p, NFData a) => NFData (HashMapChildren c p a) Source | |
(Arbitrary a, Arbitrary p, Arbitrary (c p a)) => Arbitrary (HashMapChildren c p a) Source | |
type Rep (HashMapChildren c p a) Source |
newtype HashMapStep c p a Source
HashMapStep | |
|
(Hashable p, Eq p, Trie NonEmpty p c) => Trie NonEmpty p (HashMapStep c) Source | |
Functor (c p) => Functor (HashMapStep c p) Source | |
Foldable (c p) => Foldable (HashMapStep c p) Source | |
Traversable (c p) => Traversable (HashMapStep c p) Source | |
(Eq p, Eq a, Eq (c p a)) => Eq (HashMapStep c p a) Source | |
(Eq p, Data p, Data a, Data (c p a), Typeable (* -> * -> *) c, Hashable p) => Data (HashMapStep c p a) Source | |
(Show p, Show a, Show (c p a)) => Show (HashMapStep c p a) Source | |
Generic (HashMapStep c p a) Source | |
(Hashable p, Eq p, Monoid (c p a)) => Monoid (HashMapStep c p a) Source | |
(NFData (c p a), NFData p, NFData a) => NFData (HashMapStep c p a) Source | |
(Arbitrary a, Arbitrary p, Arbitrary (c p a), Hashable p, Eq p) => Arbitrary (HashMapStep c p a) Source | |
type Rep (HashMapStep c p a) Source |
insert :: (Hashable p, Eq p, Trie NonEmpty p c, Monoid (c p a)) => NonEmpty p -> a -> HashMapStep c p a -> HashMapStep c p a Source
empty :: HashMapStep c p a Source
singleton :: Hashable p => p -> a -> HashMapStep c p a Source
Fixpoint of Steps
newtype HashMapTrie p a Source
(Hashable p, Eq p) => Trie NonEmpty p HashMapTrie Source | |
Functor (HashMapTrie p) Source | |
Foldable (HashMapTrie p) Source | |
Traversable (HashMapTrie p) Source | |
(Hashable p, Eq p) => Lookup (HashMapTrie p) Source | |
(Eq p, Eq a) => Eq (HashMapTrie p a) Source | |
(Show p, Show a) => Show (HashMapTrie p a) Source | |
(Eq p, Hashable p) => Monoid (HashMapTrie p a) Source | |
(Eq p, Hashable p, Arbitrary p, Arbitrary a) => Arbitrary (HashMapTrie p a) Source | |
type Key (HashMapTrie p) = NonEmpty p Source |
Conversion
keys :: (Hashable p, Eq p) => HashMapTrie p a -> [NonEmpty p] Source
elems :: HashMapTrie p a -> [a] Source
Query
subtrie :: (Hashable p, Eq p) => NonEmpty p -> HashMapTrie p a -> Maybe (HashMapTrie p a) Source
match :: (Hashable p, Eq p) => NonEmpty p -> HashMapTrie p a -> Maybe (NonEmpty p, a, [p]) Source
matches :: (Hashable p, Eq p) => NonEmpty p -> HashMapTrie p a -> [(NonEmpty p, a, [p])] Source
Returns a list of all the nodes along the path to the furthest point in the query, in order of the path walked from the root to the furthest point.