Safe Haskell | None |
---|---|
Language | Haskell98 |
- preOrder :: Operator o => Rewrite o e (NodeMap p) -> RuleSet o p e -> Rewrite o e Bool
- postOrder :: Operator o => Rewrite o e (NodeMap p) -> RuleSet o p e -> Rewrite o e Bool
- applyToAll :: Rewrite o e (NodeMap p) -> RuleSet o p e -> Rewrite o e Bool
- topologically :: Operator o => Rewrite o e (NodeMap p) -> RuleSet o p e -> Rewrite o e Bool
- iteratively :: Rewrite o e Bool -> Rewrite o e Bool
- sequenceRewrites :: [Rewrite o e Bool] -> Rewrite o e Bool
Documentation
preOrder :: Operator o => Rewrite o e (NodeMap p) -> RuleSet o p e -> Rewrite o e Bool Source
Infer properties, then traverse the DAG in preorder fashion and apply the rule set at every node. Properties are re-inferred after every change.
postOrder :: Operator o => Rewrite o e (NodeMap p) -> RuleSet o p e -> Rewrite o e Bool Source
Infer properties, then traverse the DAG in a postorder fashion and apply the rule set at every node. Properties are re-inferred after every change.
topologically :: Operator o => Rewrite o e (NodeMap p) -> RuleSet o p e -> Rewrite o e Bool Source
Map a ruleset over the nodes of a DAG in topological order. This function assumes that the structur of the DAG is not changed during the rewrites. Properties are only inferred once.