Safe Haskell | None |
---|---|
Language | Haskell2010 |
Tree traversal for internal syntax.
Documentation
class TermLike a where Source #
Generic term traversal.
Note: ignores sorts in terms! (Does not traverse into or collect from them.)
traverseTermM :: Monad m => (Term -> m Term) -> a -> m a Source #
Generic traversal with post-traversal action. Ignores sorts.
traverseTermM :: (Monad m, Traversable f, TermLike b, f b ~ a) => (Term -> m Term) -> a -> m a Source #
Generic traversal with post-traversal action. Ignores sorts.
foldTerm :: Monoid m => (Term -> m) -> a -> m Source #
Generic fold, ignoring sorts.
foldTerm :: (Monoid m, Foldable f, TermLike b, f b ~ a) => (Term -> m) -> a -> m Source #
Generic fold, ignoring sorts.
TermLike Bool Source # | |
TermLike Char Source # | |
TermLike Int Source # | |
TermLike Integer Source # | |
TermLike QName Source # | |
TermLike EqualityView Source # | |
TermLike LevelAtom Source # | |
TermLike PlusLevel Source # | |
TermLike Level Source # | |
TermLike Type Source # | |
TermLike Term Source # | |
TermLike Constraint Source # | |
TermLike Nat Source # | |
TermLike a => TermLike [a] Source # | |
TermLike a => TermLike (Maybe a) Source # | |
TermLike a => TermLike (Ptr a) Source # | |
TermLike a => TermLike (Dom a) Source # | |
TermLike a => TermLike (Arg a) Source # | |
TermLike a => TermLike (Blocked a) Source # | |
TermLike a => TermLike (Abs a) Source # | |
TermLike a => TermLike (Elim' a) Source # | |
TermLike a => TermLike (CompiledClauses' a) Source # | |
TermLike a => TermLike (Case a) Source # | |
TermLike a => TermLike (WithArity a) Source # | |
(TermLike a, TermLike b) => TermLike (a, b) Source # | |
(TermLike a, TermLike b, TermLike c) => TermLike (a, b, c) Source # | |
(TermLike a, TermLike b, TermLike c, TermLike d) => TermLike (a, b, c, d) Source # | |