|
|
| type TagMedia key prim = T (Tag key prim) |
|
| type T key prim = [(key, TagMedia key prim)] |
|
| fromMedia :: (Ord key, Ord prim) => [key] -> Int -> T prim -> T key prim |
|
| toMedia :: (Show key, Ord key, Ord prim) => T key prim -> T prim |
|
| expand :: (Show key, Ord key, Ord prim) => T key prim -> [(key, T prim)] |
|
| whileM :: MonadState s m => (a -> Bool) -> [m a] -> m [a] |
|
| condense :: (Ord key, Ord prim) => key -> T key prim -> (Int, T key prim) |
|
| joinTag :: Tag key (TagMedia key prim) -> TagMedia key prim |
|
| replaceInfix :: (Eq a, Eq b) => a -> [b] -> [b] -> [Tag a b] |
|
| isCyclic :: Eq a => [a] -> Bool |
|
| smallestCycle :: Eq a => [a] -> [a] |
|
| maximumCommonInfix :: (Ord a, Ord b) => ([a] -> b) -> [a] -> [a] |
|
| maximumCommonInfixMulti :: (Ord a, Ord b) => ([a] -> b) -> [[a]] -> [a] |
|
| maximumByMag :: Ord b => (a -> b) -> [a] -> a |
|
| commonPrefix :: Eq a => [a] -> [a] -> [a] |