souffle
2.0.2-371-g6315b36
|
An abstract class for manipulating AST Nodes by substitution. More...
#include <NodeMapper.h>
Public Member Functions | |
virtual Own< Node > | operator() (Own< Node > node) const =0 |
Abstract replacement method for a node. More... | |
template<typename T > | |
Own< T > | operator() (Own< T > node) const |
Wrapper for any subclass of the AST node hierarchy performing type casts. More... | |
virtual | ~NodeMapper ()=default |
An abstract class for manipulating AST Nodes by substitution.
Definition at line 36 of file NodeMapper.h.
|
virtualdefault |
Abstract replacement method for a node.
If the given nodes is to be replaced, the handed in node will be destroyed by the mapper and the returned node will become owned by the caller.
Implemented in souffle::ast::detail::LambdaNodeMapper< Lambda >.
Wrapper for any subclass of the AST node hierarchy performing type casts.
Definition at line 53 of file NodeMapper.h.