-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ module Data.SuffixTree type Alphabet a = [a] data Prefix a instance Eq a => Eq (Prefix a) instance ??? a => Show (Prefix a) data STree a Node :: [(Prefix a, STree a)] -> STree a Leaf :: STree a instance ??? a => Show (STree a) constructWith :: Eq a => Alphabet a -> [a] -> STree a construct :: Ord a => [a] -> STree a elem :: Eq a => [a] -> STree a -> Bool find :: Eq a => [a] -> STree a -> Maybe (Prefix a, STree a) fold :: (Prefix a -> b -> b) -> b -> STree a -> b fold' :: (a -> Prefix b -> a) -> a -> STree b -> a prefix :: Prefix a -> [a] suffixes :: [a] -> [[a]]