taco-db  0.1.0
Namespaces | Macros | Functions
optypes.h File Reference
#include "tdb.h"

Go to the source code of this file.

Namespaces

 taco
 

Macros

#define OPTYPE_INVALID   0
 
#define OPTYPE_IMPLICIT_CAST   1
 
#define OPTYPE_CAST   2
 
#define OPTYPE_ADD   3
 
#define OPTYPE_SUB   4
 
#define OPTYPE_MUL   5
 
#define OPTYPE_DIV   6
 
#define OPTYPE_MOD   7
 
#define OPTYPE_LSH   8
 
#define OPTYPE_RSH   9
 
#define OPTYPE_EQ   10
 
#define OPTYPE_NE   11
 
#define OPTYPE_LT   12
 
#define OPTYPE_LE   13
 
#define OPTYPE_GT   14
 
#define OPTYPE_GE   15
 
#define OPTYPE_NOT   16
 
#define OPTYPE_OR   17
 
#define OPTYPE_AND   18
 
#define OPTYPE_BITNOT   19
 
#define OPTYPE_BITOR   20
 
#define OPTYPE_BITAND   21
 
#define OPTYPE_BITXOR   22
 
#define OPTYPE_NEG   23
 
#define NUM_OPTYPES   23
 
#define OPTYPE(optype)   ((OpType) CONCAT(OPTYPE_, optype))
 

Functions

void taco::InitOpTypes ()
 
absl::string_view taco::GetOpTypeSymbol (OpType optype)
 
OpType taco::ParseOpTypeSymbol (absl::string_view str)
 
bool taco::OpTypeIsUnary (OpType optype)
 
bool taco::OpTypeIsBinary (OpType optype)
 

Macro Definition Documentation

◆ NUM_OPTYPES

#define NUM_OPTYPES   23

◆ OPTYPE

#define OPTYPE (   optype)    ((OpType) CONCAT(OPTYPE_, optype))

◆ OPTYPE_ADD

#define OPTYPE_ADD   3

◆ OPTYPE_AND

#define OPTYPE_AND   18

◆ OPTYPE_BITAND

#define OPTYPE_BITAND   21

◆ OPTYPE_BITNOT

#define OPTYPE_BITNOT   19

◆ OPTYPE_BITOR

#define OPTYPE_BITOR   20

◆ OPTYPE_BITXOR

#define OPTYPE_BITXOR   22

◆ OPTYPE_CAST

#define OPTYPE_CAST   2

◆ OPTYPE_DIV

#define OPTYPE_DIV   6

◆ OPTYPE_EQ

#define OPTYPE_EQ   10

◆ OPTYPE_GE

#define OPTYPE_GE   15

◆ OPTYPE_GT

#define OPTYPE_GT   14

◆ OPTYPE_IMPLICIT_CAST

#define OPTYPE_IMPLICIT_CAST   1

◆ OPTYPE_INVALID

#define OPTYPE_INVALID   0

◆ OPTYPE_LE

#define OPTYPE_LE   13

◆ OPTYPE_LSH

#define OPTYPE_LSH   8

◆ OPTYPE_LT

#define OPTYPE_LT   12

◆ OPTYPE_MOD

#define OPTYPE_MOD   7

◆ OPTYPE_MUL

#define OPTYPE_MUL   5

◆ OPTYPE_NE

#define OPTYPE_NE   11

◆ OPTYPE_NEG

#define OPTYPE_NEG   23

◆ OPTYPE_NOT

#define OPTYPE_NOT   16

◆ OPTYPE_OR

#define OPTYPE_OR   17

◆ OPTYPE_RSH

#define OPTYPE_RSH   9

◆ OPTYPE_SUB

#define OPTYPE_SUB   4