adict-0.1.0: Approximate dictionary searching

Safe HaskellNone

NLP.Adict.Trie

Synopsis

Documentation

type TrieD a b = Trie a (Maybe b)Source

data Trie a b Source

Constructors

Trie 

Fields

valueIn :: b
 
edgeMap :: Map a (Trie a b)
 

Instances

Functor (Trie a) 
(Eq a, Eq b) => Eq (Trie a b) 
(Ord a, Ord b) => Ord (Trie a b) 
(Show a, Show b) => Show (Trie a b) 
(Ord a, Binary a, Binary b) => Binary (Trie a b) 

unTrie :: Trie a b -> (b, [(a, Trie a b)])Source

child :: Ord a => a -> Trie a b -> Maybe (Trie a b)Source

anyChild :: Trie a b -> [(a, Trie a b)]Source

mkTrie :: Ord a => b -> [(a, Trie a b)] -> Trie a bSource

setValue :: b -> Trie a b -> Trie a bSource

substChild :: Ord a => a -> Trie a b -> Trie a b -> Trie a bSource

insert :: Ord a => [a] -> b -> TrieD a b -> TrieD a bSource

size :: Trie a b -> IntSource

follow :: Ord a => [a] -> Trie a b -> Maybe (Trie a b)Source

lookup :: Ord a => [a] -> TrieD a b -> Maybe bSource

fromLang :: Ord a => [[a]] -> TrieD a ()Source

fromList :: Ord a => [([a], b)] -> TrieD a bSource

toList :: TrieD a b -> [([a], b)]Source

serialize :: (Ord a, Ord b) => Trie a b -> [Node a b]Source

deserialize :: (Ord a, Ord b) => [Node a b] -> Trie a bSource

FIXME: Null node list case.

toDAWG :: (Ord a, Ord b) => Trie a b -> Trie a bSource