MimIR 0.1
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
normalizers.cpp
Go to the documentation of this file.
1#include <mim/driver.h>
2#include <mim/world.h>
3
5
7
8const Def* normalize_is_loaded(const Def*, const Def*, const Def* arg) {
9 auto& world = arg->world();
10 auto& driver = world.driver();
11 if (auto str = tuple2str(arg); !str.empty()) return world.lit_bool(driver.is_loaded(driver.sym(str)));
12
13 return {};
14}
15
17
18} // namespace mim::plug::compile
Base class for all Defs.
Definition def.h:251
World & world() const noexcept
Definition def.cpp:436
const Driver & driver() const
Definition world.h:91
#define MIM_compile_NORMALIZER_IMPL
Definition autogen.h:197
The compile Plugin
const Def * normalize_is_loaded(const Def *, const Def *, const Def *arg)
std::string tuple2str(const Def *)
Definition tuple.cpp:77