mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-12-15 06:51:36 +00:00
3e995d7aac
This also means that for now Lua-style multi-assignments are disabled, those should be easy to enable by making some changes to the assignment_statement grammar so that it doesn't recognize single assignments, but for now this is low priority because it adds a significant amount of complexity to do this right with functions that have multiple return values.
75 lines
970 B
C
75 lines
970 B
C
// Name n-ary
|
|
xx(Nil, )
|
|
|
|
xx(ID, )
|
|
xx(Super, )
|
|
xx(Null, )
|
|
xx(Self, )
|
|
xx(ConstValue, )
|
|
xx(FuncCall, )
|
|
xx(ArrayAccess, )
|
|
xx(MemberAccess, )
|
|
xx(TypeRef, )
|
|
|
|
xx(PostInc, )
|
|
xx(PostDec, )
|
|
|
|
xx(PreInc, )
|
|
xx(PreDec, )
|
|
xx(Negate, )
|
|
xx(AntiNegate, )
|
|
xx(BitNot, )
|
|
xx(BoolNot, )
|
|
xx(SizeOf, )
|
|
xx(AlignOf, )
|
|
|
|
xx(Add, )
|
|
xx(Sub, )
|
|
xx(Mul, )
|
|
xx(Div, )
|
|
xx(Mod, )
|
|
xx(Pow, )
|
|
xx(CrossProduct, )
|
|
xx(DotProduct, )
|
|
xx(LeftShift, )
|
|
xx(RightShift, )
|
|
xx(URightShift, )
|
|
xx(Concat, )
|
|
|
|
xx(LT, )
|
|
xx(LTEQ, )
|
|
xx(GT, )
|
|
xx(GTEQ, )
|
|
xx(LTGTEQ, )
|
|
xx(Is, )
|
|
|
|
xx(EQEQ, )
|
|
xx(NEQ, )
|
|
xx(APREQ, )
|
|
|
|
xx(BitAnd, )
|
|
xx(BitOr, )
|
|
xx(BitXor, )
|
|
xx(BoolAnd, )
|
|
xx(BoolOr, )
|
|
|
|
xx(Assign, )
|
|
xx(AddAssign, )
|
|
xx(SubAssign, )
|
|
xx(MulAssign, )
|
|
xx(DivAssign, )
|
|
xx(ModAssign, )
|
|
xx(LshAssign, )
|
|
xx(RshAssign, )
|
|
xx(URshAssign, )
|
|
xx(AndAssign, )
|
|
xx(OrAssign, )
|
|
xx(XorAssign, )
|
|
|
|
xx(Scope, )
|
|
|
|
xx(Trinary, )
|
|
|
|
xx(Cast, )
|
|
|
|
#undef xx
|