Safe Haskell | None |
---|---|
Language | Haskell2010 |
Example of tree regular expressions over a regular data type.
Click on Source
to view the code.
- data Tree' f
- type Tree = Fix Tree'
- data Rose' f = Rose' {}
- type Rose = Fix Rose'
- pattern Leaf :: Fix Tree'
- pattern Branch Int (Fix Tree') (Fix Tree') :: Fix Tree'
- pattern Rose Int [Fix Rose'] :: Fix Rose'
- aTree1 :: Tree
- aTree2 :: Tree
- aTree3 :: Tree
- aRose1 :: Rose
- aRose2 :: Rose
- pattern Leaf_ :: Regex' t t Tree'
- pattern Branch_ Int (Regex' t t Tree') (Regex' t t Tree') :: Regex' t t Tree'
- rTree1 :: Regex String Tree'
- rTree2 :: Integer -> Regex Integer Tree'
- rTree3 :: Integer -> Integer -> Regex Integer Tree'
- rRose1 :: Regex String Rose'
- eWith1 :: Tree -> [Tree]
- eWith2 :: Tree -> [Tree]
- eWith2Bis :: Tree -> [Tree]
- eWith3 :: Tree -> [Tree]
- eWith4 :: Tree -> [Int]
- grammar1 :: Grammar String Tree' () String
- grammar2 :: Grammar Integer Tree' () (String, Sum Integer)
- grammar3 :: Grammar Integer Tree' Char (String, Sum Integer)
Data type definitions
The pattern functor, which should be kept open. Recursion is done by using the argument.
The pattern functor for rose trees.