Thorin 1.9.0
The Higher ORder INtermediate representation
|
#include <thorin/fe/tok.h>
Public Member Functions | |
Tok () | |
Tok (Loc loc, Tag tag) | |
Tok (Loc loc, char8_t c) | |
Tok (Loc loc, u64 u) | |
Tok (Loc loc, s64 s) | |
Tok (Loc loc, f64 f) | |
Tok (Loc loc, const Lit *i) | |
Tok (Loc loc, Tag tag, Sym sym) | |
bool | isa (Tag tag) const |
Tag | tag () const |
Dbg | dbg () const |
Loc | loc () const |
operator bool () const | |
const Lit * | lit_i () const |
char8_t | lit_c () const |
u64 | lit_u () const |
Sym | sym () const |
Precedence | |
enum class | Prec { CODE } |
static constexpr std::array< Prec, 2 > | prec (Prec p) |
static Prec | prec (const Def *) |
Tag | |
enum class | Tag { Nil , CODE , K_module , K_import , K_plugin , K_ax , K_def , K_let , K_ret , K_Nat , K_Idx , K_extern , K_Sigma , K_Type , K_Univ , K_Cn , K_Fn , K_Pi , K_con , K_fun , K_lam , K_cn , K_fn , K_ff , K_tt , K_ins , K_i1 , K_i8 , K_i16 , K_i32 , K_i64 , K_Bool , K_I1 , K_I8 , K_I16 , K_I32 , K_I64 , EoF , L_s , L_u , L_i , L_f , L_c , M_id , M_anx , M_str , D_angle_l , D_angle_r , D_brace_l , D_brace_r , D_brckt_l , D_brckt_r , D_paren_l , D_paren_r , D_quote_l , D_quote_r , T_Pi , T_arrow , T_assign , T_at , T_backtick , T_bang , T_bot , T_top , T_box , T_colon , T_colon_colon , T_comma , T_dollar , T_dot , T_extract , T_lm , T_semicolon , T_star } |
static std::string_view | tag2str (Tok::Tag) |
static constexpr Tok::Tag | delim_l2r (Tag tag) |
|
strong |
|
strong |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 125 of file tok.h.
References CODE, and THORIN_PREC.
|
inline |
|
inline |
|
static |
Definition at line 10 of file tok.cpp.
References CODE, tag(), THORIN_KEY, and THORIN_TOK.