38#ifndef YY_AX_AXPARSER_H_INCLUDED
39# define YY_AX_AXPARSER_H_INCLUDED
166#if ! defined AXSTYPE && ! defined AXSTYPE_IS_DECLARED
171 using ExpList = std::vector<openvdb::ax::ast::Expression*>;
185 openvdb::ax::ast::CommaOperator*
comma;
196# define AXSTYPE_IS_TRIVIAL 1
197# define AXSTYPE_IS_DECLARED 1
201#if ! defined AXLTYPE && ! defined AXLTYPE_IS_DECLARED
210# define AXLTYPE_IS_DECLARED 1
211# define AXLTYPE_IS_TRIVIAL 1
int axparse(openvdb::ax::ast::Tree **tree)
axtokentype
Definition axparser.h:60
@ PLUSPLUS
Definition axparser.h:156
@ NOT
Definition axparser.h:154
@ VEC3D
Definition axparser.h:93
@ BITOR
Definition axparser.h:137
@ V_DOLLAR
Definition axparser.h:110
@ DIVIDE
Definition axparser.h:151
@ AXEOF
Definition axparser.h:62
@ MINUSMINUS
Definition axparser.h:157
@ LESSTHANOREQUAL
Definition axparser.h:145
@ S_AT
Definition axparser.h:100
@ UMINUS
Definition axparser.h:153
@ SHIFTRIGHT
Definition axparser.h:147
@ MAT3F
Definition axparser.h:102
@ MAT3D
Definition axparser.h:103
@ IF
Definition axparser.h:70
@ COLON
Definition axparser.h:123
@ MAT4D
Definition axparser.h:105
@ M3F_AT
Definition axparser.h:106
@ I_AT
Definition axparser.h:98
@ WHILE
Definition axparser.h:74
@ DOUBLE
Definition axparser.h:83
@ BITNOT
Definition axparser.h:155
@ MORETHANOREQUAL
Definition axparser.h:144
@ RSQUARE
Definition axparser.h:81
@ INT64
Definition axparser.h:86
@ MINUSEQUALS
Definition axparser.h:126
@ SHIFTLEFTEQUALS
Definition axparser.h:133
@ CONTINUE
Definition axparser.h:77
@ LSQUARE
Definition axparser.h:80
@ BITOREQUALS
Definition axparser.h:132
@ RETURN
Definition axparser.h:75
@ BITXOREQUALS
Definition axparser.h:131
@ SEMICOLON
Definition axparser.h:67
@ M4F_AT
Definition axparser.h:107
@ VEC3F
Definition axparser.h:92
@ MODULOEQUALS
Definition axparser.h:129
@ I_DOLLAR
Definition axparser.h:109
@ PLUSEQUALS
Definition axparser.h:125
@ LPARENS
Definition axparser.h:158
@ RPARENS
Definition axparser.h:159
@ EQUALSEQUALS
Definition axparser.h:140
@ VEC2I
Definition axparser.h:88
@ AXUNDEF
Definition axparser.h:64
@ BITXOR
Definition axparser.h:138
@ DOT_Y
Definition axparser.h:113
@ BITAND
Definition axparser.h:139
@ V_AT
Definition axparser.h:99
@ L_INT64
Definition axparser.h:116
@ L_STRING
Definition axparser.h:119
@ MAT4F
Definition axparser.h:104
@ AT
Definition axparser.h:68
@ I16_AT
Definition axparser.h:101
@ RCURLY
Definition axparser.h:79
@ IDENTIFIER
Definition axparser.h:120
@ AND
Definition axparser.h:136
@ PLUS
Definition axparser.h:148
@ DOLLAR
Definition axparser.h:69
@ LESSTHAN
Definition axparser.h:143
@ DOT_X
Definition axparser.h:112
@ ELSE
Definition axparser.h:71
@ L_DOUBLE
Definition axparser.h:118
@ VEC4F
Definition axparser.h:95
@ DIVIDEEQUALS
Definition axparser.h:128
@ EQUALS
Definition axparser.h:124
@ BREAK
Definition axparser.h:76
@ OR
Definition axparser.h:135
@ VEC4I
Definition axparser.h:94
@ FLOAT
Definition axparser.h:84
@ FALSE
Definition axparser.h:66
@ LCURLY
Definition axparser.h:78
@ MODULO
Definition axparser.h:152
@ FOR
Definition axparser.h:72
@ TRUE
Definition axparser.h:65
@ MORETHAN
Definition axparser.h:142
@ VEC2D
Definition axparser.h:90
@ DOT_Z
Definition axparser.h:114
@ VEC3I
Definition axparser.h:91
@ F_AT
Definition axparser.h:97
@ MULTIPLYEQUALS
Definition axparser.h:127
@ DO
Definition axparser.h:73
@ VEC4D
Definition axparser.h:96
@ INT32
Definition axparser.h:85
@ BITANDEQUALS
Definition axparser.h:130
@ L_INT32
Definition axparser.h:115
@ LOWER_THAN_ELSE
Definition axparser.h:160
@ QUESTION
Definition axparser.h:122
@ S_DOLLAR
Definition axparser.h:111
@ AXerror
Definition axparser.h:63
@ NOTEQUALS
Definition axparser.h:141
@ L_FLOAT
Definition axparser.h:117
@ SHIFTRIGHTEQUALS
Definition axparser.h:134
@ MULTIPLY
Definition axparser.h:150
@ BOOL
Definition axparser.h:87
@ SHIFTLEFT
Definition axparser.h:146
@ AXEMPTY
Definition axparser.h:61
@ VEC2F
Definition axparser.h:89
@ STRING
Definition axparser.h:82
@ F_DOLLAR
Definition axparser.h:108
@ MINUS
Definition axparser.h:149
@ COMMA
Definition axparser.h:121
enum axtokentype axtoken_kind_t
Definition axparser.h:162
Definition axparser.h:204
int first_column
Definition axparser.h:206
int last_line
Definition axparser.h:207
int last_column
Definition axparser.h:208
int first_line
Definition axparser.h:205
Definition axparser.h:168
openvdb::ax::ast::Expression * expression
Definition axparser.h:182
openvdb::ax::ast::FunctionCall * function
Definition axparser.h:183
openvdb::ax::ast::Local * local
Definition axparser.h:190
uint64_t index
Definition axparser.h:174
openvdb::ax::ast::DeclareLocal * declare_local
Definition axparser.h:189
openvdb::ax::ast::Block * block
Definition axparser.h:181
openvdb::ax::ast::Statement * statement
Definition axparser.h:179
openvdb::ax::ast::ArrayPack * arraypack
Definition axparser.h:184
double flt
Definition axparser.h:175
std::vector< openvdb::ax::ast::Expression * > ExpList
Temporary storage for comma separated expressions.
Definition axparser.h:171
openvdb::ax::ast::Variable * variable
Definition axparser.h:186
ExpList * explist
Definition axparser.h:191
openvdb::ax::ast::ExternalVariable * external
Definition axparser.h:187
openvdb::ax::ast::Tree * tree
Definition axparser.h:177
openvdb::ax::ast::CommaOperator * comma
Definition axparser.h:185
openvdb::ax::ast::Attribute * attribute
Definition axparser.h:188
const char * string
Definition axparser.h:173
openvdb::ax::ast::StatementList * statementlist
Definition axparser.h:180
openvdb::ax::ast::ValueBase * value
Definition axparser.h:178