![]() |
Spicy
|
Public Member Functions | |
Visitor (GlobalOptimizer::Functions *hooks) | |
void | collect (Node &node) |
bool | prune (Node &node) |
bool | prune_uses (Node &node) |
bool | prune_decls (Node &node) |
result_t | operator() (const type::struct_::Field &x, position_t p) |
result_t | operator() (const declaration::Function &x, position_t p) |
result_t | operator() (const operator_::struct_::MemberCall &x, position_t p) |
result_t | operator() (const operator_::function::Call &call, position_t p) |
![]() | |
virtual void | preDispatch (const Erased &, int) |
auto | dispatch (position_t &i) |
auto | dispatch (const_position_t &i) |
auto | dispatch (Erased *n) |
auto | dispatch (const Erased &n) |
auto | walk (const Erased &root) |
auto | walk (Erased *root) |
Static Public Member Functions | |
template<typename T > | |
static void | replaceNode (position_t &p, T &&n) |
static auto | function_identifier (const declaration::Function &fn, position_t p) |
static void | removeNode (position_t &p) |
Public Attributes | |
Stage | _stage = Stage::COLLECT |
GlobalOptimizer::Functions * | _functions = nullptr |
Additional Inherited Members | |
![]() | |
using | result_t = Result |
using | erased_t = Erased |
using | base_t = Visitor< Result, Dispatcher, Erased, order > |
using | visitor_t = Dispatcher |
using | iterator_t = Iterator< Erased, order, false > |
using | const_iterator_t = Iterator< Erased, order, true > |
using | position_t = typename iterator_t::Position |
using | const_position_t = typename const_iterator_t::Position |
![]() | |
static const Order | order_ = order |