tries-0.0.4.2: Various trie implementations in Haskell

Safe HaskellNone
LanguageHaskell2010

Data.Trie.Knuth

Documentation

newtype KnuthTrie s x Source #

Constructors

KnuthTrie 

Fields

Instances

Eq s => Trie NonEmpty s KnuthTrie Source # 

Methods

lookup :: NonEmpty s -> KnuthTrie s a -> Maybe a Source #

insert :: NonEmpty s -> a -> KnuthTrie s a -> KnuthTrie s a Source #

delete :: NonEmpty s -> KnuthTrie s a -> KnuthTrie s a Source #

Functor (KnuthTrie s) Source # 

Methods

fmap :: (a -> b) -> KnuthTrie s a -> KnuthTrie s b #

(<$) :: a -> KnuthTrie s b -> KnuthTrie s a #

Foldable (KnuthTrie s) Source # 

Methods

fold :: Monoid m => KnuthTrie s m -> m #

foldMap :: Monoid m => (a -> m) -> KnuthTrie s a -> m #

foldr :: (a -> b -> b) -> b -> KnuthTrie s a -> b #

foldr' :: (a -> b -> b) -> b -> KnuthTrie s a -> b #

foldl :: (b -> a -> b) -> b -> KnuthTrie s a -> b #

foldl' :: (b -> a -> b) -> b -> KnuthTrie s a -> b #

foldr1 :: (a -> a -> a) -> KnuthTrie s a -> a #

foldl1 :: (a -> a -> a) -> KnuthTrie s a -> a #

toList :: KnuthTrie s a -> [a] #

null :: KnuthTrie s a -> Bool #

length :: KnuthTrie s a -> Int #

elem :: Eq a => a -> KnuthTrie s a -> Bool #

maximum :: Ord a => KnuthTrie s a -> a #

minimum :: Ord a => KnuthTrie s a -> a #

sum :: Num a => KnuthTrie s a -> a #

product :: Num a => KnuthTrie s a -> a #

Traversable (KnuthTrie s) Source # 

Methods

traverse :: Applicative f => (a -> f b) -> KnuthTrie s a -> f (KnuthTrie s b) #

sequenceA :: Applicative f => KnuthTrie s (f a) -> f (KnuthTrie s a) #

mapM :: Monad m => (a -> m b) -> KnuthTrie s a -> m (KnuthTrie s b) #

sequence :: Monad m => KnuthTrie s (m a) -> m (KnuthTrie s a) #

(Eq s, Eq x) => Eq (KnuthTrie s x) Source # 

Methods

(==) :: KnuthTrie s x -> KnuthTrie s x -> Bool #

(/=) :: KnuthTrie s x -> KnuthTrie s x -> Bool #

(Data s, Data x) => Data (KnuthTrie s x) Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> KnuthTrie s x -> c (KnuthTrie s x) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (KnuthTrie s x) #

toConstr :: KnuthTrie s x -> Constr #

dataTypeOf :: KnuthTrie s x -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (KnuthTrie s x)) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (KnuthTrie s x)) #

gmapT :: (forall b. Data b => b -> b) -> KnuthTrie s x -> KnuthTrie s x #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> KnuthTrie s x -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> KnuthTrie s x -> r #

gmapQ :: (forall d. Data d => d -> u) -> KnuthTrie s x -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> KnuthTrie s x -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> KnuthTrie s x -> m (KnuthTrie s x) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> KnuthTrie s x -> m (KnuthTrie s x) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> KnuthTrie s x -> m (KnuthTrie s x) #

(Show s, Show x) => Show (KnuthTrie s x) Source # 

Methods

showsPrec :: Int -> KnuthTrie s x -> ShowS #

show :: KnuthTrie s x -> String #

showList :: [KnuthTrie s x] -> ShowS #

Generic (KnuthTrie s x) Source # 

Associated Types

type Rep (KnuthTrie s x) :: * -> * #

Methods

from :: KnuthTrie s x -> Rep (KnuthTrie s x) x #

to :: Rep (KnuthTrie s x) x -> KnuthTrie s x #

(NFData s, NFData x) => NFData (KnuthTrie s x) Source # 

Methods

rnf :: KnuthTrie s x -> () #

(Arbitrary s, Arbitrary x) => Arbitrary (KnuthTrie s x) Source # 

Methods

arbitrary :: Gen (KnuthTrie s x)

shrink :: KnuthTrie s x -> [KnuthTrie s x]

type Rep (KnuthTrie s x) Source # 
type Rep (KnuthTrie s x) = D1 (MetaData "KnuthTrie" "Data.Trie.Knuth" "tries-0.0.4.2-GoUux3xZxk2I3AGmQNFkky" True) (C1 (MetaCons "KnuthTrie" PrefixI True) (S1 (MetaSel (Just Symbol "unKnuthTrie") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (KnuthForest (s, Maybe x)))))