Thorin 1.9.0
The Higher ORder INtermediate representation
Loading...
Searching...
No Matches
autogen.h File Reference
#include <thorin/axiom.h>
#include <thorin/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.

Namespaces

namespace  thorin::plug::regex
 The regex Plugin
 
namespace  thorin
 
namespace  thorin::plug
 

Macros

#define THORIN_regex_NORMALIZER_IMPL
 

Enumerations

%regex.lit
enum  thorin::plug::regex::lit : flags_t
 
%regex.cls
enum  thorin::plug::regex::cls : flags_t {
  thorin::plug::regex::d = 0x4c62066400000500 ,
  thorin::plug::regex::D = 0x4c62066400000501 ,
  thorin::plug::regex::w = 0x4c62066400000502 ,
  thorin::plug::regex::W = 0x4c62066400000503 ,
  thorin::plug::regex::s = 0x4c62066400000504 ,
  thorin::plug::regex::S = 0x4c62066400000505
}
 
%regex.any
enum  thorin::plug::regex::any : flags_t
 
%regex.lower_regex
enum  thorin::plug::regex::lower_regex : flags_t
 

Functions

void thorin::plug::regex::register_normalizers (Normalizers &normalizers)
 

Variables

static constexpr plugin_t thorin::plug::regex::Plugin_Id = 0x4c62066400000000
 

%regex.conj

enum  thorin::plug::regex::conj : flags_t
 
Ref thorin::plug::regex::normalize_conj (Ref type, Ref callee, Ref arg)
 

%regex.disj

enum  thorin::plug::regex::disj : flags_t
 
Ref thorin::plug::regex::normalize_disj (Ref type, Ref, Ref arg)
 

%regex.range

enum  thorin::plug::regex::range : flags_t
 
Ref thorin::plug::regex::normalize_range (Ref type, Ref callee, Ref arg)
 

%regex.not_

enum  thorin::plug::regex::not_ : flags_t
 
Ref thorin::plug::regex::normalize_not (Ref type, Ref callee, Ref arg)
 

%regex.quant

enum  thorin::plug::regex::quant : flags_t {
  thorin::plug::regex::optional = 0x4c62066400000700 ,
  thorin::plug::regex::star = 0x4c62066400000701 ,
  thorin::plug::regex::plus = 0x4c62066400000702
}
 
template<quant id>
Ref thorin::plug::regex::normalize_quant (Ref type, Ref callee, Ref arg)
 

Macro Definition Documentation

◆ THORIN_regex_NORMALIZER_IMPL

#define THORIN_regex_NORMALIZER_IMPL
Value:
void register_normalizers(Normalizers& normalizers) {\
normalizers[flags_t(Annex::Base<conj>)] = &normalize_conj; \
normalizers[flags_t(Annex::Base<disj>)] = &normalize_disj; \
normalizers[flags_t(Annex::Base<range>)] = &normalize_range; \
normalizers[flags_t(Annex::Base<not_>)] = &normalize_not; \
normalizers[flags_t(quant::optional)] = &normalize_quant<quant::optional>; \
normalizers[flags_t(quant::star)] = &normalize_quant<quant::star>; \
normalizers[flags_t(quant::plus)] = &normalize_quant<quant::plus>; \
}

Definition at line 131 of file autogen.h.