MimIR 0.1
MimIR is my Intermediate Representation
|
Transitively collects all closed mutables (Def::is_closed) in a World. More...
#include <mim/phase/phase.h>
Public Member Functions | |
ClosedCollector (World &world) | |
virtual void | visit (M *mut) |
![]() | |
ClosedMutPhase (World &world, std::string_view name, bool dirty, bool elide_empty) | |
void | start () override |
Actual entry. | |
![]() | |
Phase (World &world, std::string_view name, bool dirty) | |
virtual | ~Phase ()=default |
World & | world () |
std::string_view | name () const |
bool | is_dirty () const |
virtual void | run () |
Entry point and generates some debug output; invokes Phase::start. | |
Static Public Member Functions | |
static Vector< M * > | collect (World &world) |
Wrapper to directly receive all closed mutables as Vector. | |
![]() | |
template<class P , class... Args> | |
static void | run (Args &&... args) |
Runs a single Phase. | |
Public Attributes | |
Vector< M * > | muts |
Additional Inherited Members | |
![]() | |
virtual void | visit (Def *)=0 |
Def * | root () const |
![]() | |
void | set_name (std::string name) |
Transitively collects all closed mutables (Def::is_closed) in a World.
|
inline |
|
inlinestatic |
Wrapper to directly receive all closed mutables as Vector.
Definition at line 188 of file phase.h.
References mim::ClosedCollector< M >::muts, mim::Phase::run(), and mim::Phase::world().
|
inlinevirtual |
Definition at line 185 of file phase.h.
References mim::ClosedCollector< M >::muts.
Vector<M*> mim::ClosedCollector< M >::muts |
Definition at line 194 of file phase.h.
Referenced by mim::ClosedCollector< M >::collect(), and mim::ClosedCollector< M >::visit().