Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data MapChildren c p a = MapChildren {
- mapNode :: !(Maybe a)
- mapChildren :: !(Maybe (c p a))
- newtype MapStep c p a = MapStep {
- unMapStep :: Map p (MapChildren c p a)
- insert :: (Ord p, Trie NonEmpty p c, Monoid (c p a)) => NonEmpty p -> a -> MapStep c p a -> MapStep c p a
- empty :: MapStep c s a
- singleton :: s -> a -> MapStep c s a
- newtype MapTrie s a = MapTrie {}
- keys :: forall s a. Ord s => MapTrie s a -> [NonEmpty s]
- elems :: MapTrie s a -> [a]
- subtrie :: Ord s => NonEmpty s -> MapTrie s a -> Maybe (MapTrie s a)
- match :: Ord s => NonEmpty s -> MapTrie s a -> Maybe (NonEmpty s, a, [s])
- matches :: Ord s => NonEmpty s -> MapTrie s a -> [(NonEmpty s, a, [s])]
One Step
data MapChildren c p a Source #
MapChildren | |
|
Functor (c p) => Functor (MapChildren c p) Source # | |
Foldable (c p) => Foldable (MapChildren c p) Source # | |
Traversable (c p) => Traversable (MapChildren c p) Source # | |
(Eq (c p a), Eq a) => Eq (MapChildren c p a) Source # | |
(Data (c p a), Data a, Typeable * p, Typeable (* -> * -> *) c) => Data (MapChildren c p a) Source # | |
(Ord (c p a), Ord a) => Ord (MapChildren c p a) Source # | |
(Show (c p a), Show a) => Show (MapChildren c p a) Source # | |
Generic (MapChildren c p a) Source # | |
Monoid (c p a) => Monoid (MapChildren c p a) Source # | |
(Arbitrary a, Arbitrary p, Arbitrary (c p a)) => Arbitrary (MapChildren c p a) Source # | |
(NFData (c p a), NFData p, NFData a) => NFData (MapChildren c p a) Source # | |
type Rep (MapChildren c p a) Source # | |
newtype MapStep c p a Source #
MapStep | |
|
(Ord p, Trie NonEmpty p c) => Trie NonEmpty p (MapStep c) Source # | No insertion instance - requires children nodes to be a monoid. Use |
Functor (c p) => Functor (MapStep c p) Source # | |
Foldable (c p) => Foldable (MapStep c p) Source # | |
Traversable (c p) => Traversable (MapStep c p) Source # | |
(Eq (c p a), Eq a, Eq p) => Eq (MapStep c p a) Source # | |
(Ord p, Data (c p a), Data a, Data p, Typeable (* -> * -> *) c) => Data (MapStep c p a) Source # | |
(Ord (c p a), Ord a, Ord p) => Ord (MapStep c p a) Source # | |
(Show (c p a), Show a, Show p) => Show (MapStep c p a) Source # | |
Generic (MapStep c p a) Source # | |
(Ord s, Monoid (c s a)) => Monoid (MapStep c s a) Source # | |
(Arbitrary a, Arbitrary p, Arbitrary (c p a), Ord p) => Arbitrary (MapStep c p a) Source # | |
(NFData (c p a), NFData p, NFData a) => NFData (MapStep c p a) Source # | |
type Rep (MapStep c p a) Source # | |
insert :: (Ord p, Trie NonEmpty p c, Monoid (c p a)) => NonEmpty p -> a -> MapStep c p a -> MapStep c p a Source #
Fixpoint of Steps
Ord s => Trie NonEmpty s MapTrie Source # | |
Functor (MapTrie s) Source # | |
Foldable (MapTrie s) Source # | |
Traversable (MapTrie s) Source # | |
Ord s => Lookup (MapTrie s) Source # | |
(Eq a, Eq s) => Eq (MapTrie s a) Source # | |
(Ord a, Ord s) => Ord (MapTrie s a) Source # | |
(Show a, Show s) => Show (MapTrie s a) Source # | |
Ord s => Monoid (MapTrie s a) Source # | |
(Ord s, Arbitrary s, Arbitrary a) => Arbitrary (MapTrie s a) Source # | |
type Key (MapTrie s) Source # | |