MimIR
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
autogen.h File Reference
#include <mim/axm.h>
#include <mim/plugin.h>
Include dependency graph for autogen.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mim::plug::ord::Key_field
 The fields of ord.Key, by index. More...

Namespaces

namespace  mim::plug::ord
 The ord Plugin
namespace  mim
namespace  mim::plug

Macros

#define MIM_ord_NORMALIZER_IMPL

Enumerations

<tt>ord.Key</tt>
enum class  mim::plug::ord::Key : flags_t
<tt>ord.Set</tt>
enum class  mim::plug::ord::Set : flags_t
<tt>ord.Map</tt>
enum class  mim::plug::ord::Map : flags_t
<tt>ord.create_set</tt>
enum class  mim::plug::ord::create_set : flags_t
<tt>ord.create_map</tt>
enum class  mim::plug::ord::create_map : flags_t
<tt>ord.is_empty_set</tt>
enum class  mim::plug::ord::is_empty_set : flags_t
<tt>ord.is_empty_map</tt>
enum class  mim::plug::ord::is_empty_map : flags_t

Functions

void mim::plug::ord::register_normalizers (Normalizers &normalizers)

Variables

static constexpr plugin_t mim::plug::ord::Plugin_Id = 0x4131400000000000

<tt>ord.init</tt>

enum class  mim::plug::ord::init : flags_t {
  mim::plug::ord::set = 0x4131400000000300 ,
  mim::plug::ord::map = 0x4131400000000301
}
template<init id>
const Def * mim::plug::ord::normalize_init (const Def *type, const Def *callee, const Def *arg)

<tt>ord.size</tt>

enum class  mim::plug::ord::size : flags_t {
  mim::plug::ord::set = 0x4131400000000600 ,
  mim::plug::ord::map = 0x4131400000000601
}
template<size>
const Def * mim::plug::ord::normalize_size (const Def *, const Def *, const Def *arg)

<tt>ord.get</tt>

enum class  mim::plug::ord::get : flags_t
const Def * mim::plug::ord::normalize_get (const Def *type, const Def *callee, const Def *arg)

<tt>ord.contains</tt>

enum class  mim::plug::ord::contains : flags_t {
  mim::plug::ord::set = 0x4131400000000a00 ,
  mim::plug::ord::map = 0x4131400000000a01
}
template<contains id>
const Def * mim::plug::ord::normalize_contains (const Def *, const Def *callee, const Def *arg)

<tt>ord.insert</tt>

enum class  mim::plug::ord::insert : flags_t {
  mim::plug::ord::set = 0x4131400000000b00 ,
  mim::plug::ord::map = 0x4131400000000b01
}
template<insert id>
const Def * mim::plug::ord::normalize_insert (const Def *type, const Def *callee, const Def *arg)

Macro Definition Documentation

◆ MIM_ord_NORMALIZER_IMPL

#define MIM_ord_NORMALIZER_IMPL
Value:
void register_normalizers(Normalizers& normalizers) {\
normalizers[flags_t(init::set)] = &normalize_init<init::set>; \
normalizers[flags_t(init::map)] = &normalize_init<init::map>; \
normalizers[flags_t(size::set)] = &normalize_size<size::set>; \
normalizers[flags_t(size::map)] = &normalize_size<size::map>; \
normalizers[flags_t(Annex::Base<get>)] = &normalize_get; \
normalizers[flags_t(contains::set)] = &normalize_contains<contains::set>; \
normalizers[flags_t(contains::map)] = &normalize_contains<contains::map>; \
normalizers[flags_t(insert::set)] = &normalize_insert<insert::set>; \
normalizers[flags_t(insert::map)] = &normalize_insert<insert::map>; \
}

Definition at line 122 of file autogen.h.