LRDE Tiger Compiler
1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
|
Namespaces | |
namespace | tasks |
Tasks of the astclone module. |
Classes | |
class | Cloner |
Duplicate an Ast. More... |
Functions | |
template<typename T > | |
T * | clone (const T &tree) |
Make a deep copy of an AST. | |
template<typename A > | |
void | apply (applicable< A > f, A *&t) |
Have the pure function f side effect on t. |
Cloning an ast::Ast.
void astclone::apply | ( | applicable< A > | f, |
A *& | t | ||
) |
Have the pure function f side effect on t.
Referenced by desugar::tasks::bound_checks_add(), inlining::tasks::inline_expand(), inlining::tasks::prune(), and desugar::tasks::raw_bound_checks_add().
T * astclone::clone | ( | const T & | tree | ) |
Make a deep copy of an AST.
tree | abstract syntax tree's root. |
References astclone::Cloner::result_get().
Referenced by target::mips::Cpu::Cpu().