10#if !defined(_T) && !defined(T)
11 #define _PD_OUT_OF_TOKEN_TYPE_H
12 #define _T(token_type) PS_TOKEN_##token_type
13 #define T(token_type) _T(token_type)
18ENUM(
T(LIT_UNIT),
"unit-literal",
"()")
23ENUM(
T(LBRACK), "left-bracket", "[")
24ENUM(
T(RBRACK), "right-bracket", "]")
25ENUM(
T(LBRACE), "left-brace", "{
")
26ENUM(T(RBRACE), "right-brace
", "}
")
27ENUM(T(QMARK), "question-mark
", "?
")
28ENUM(T(3DOT), "3-dot
", "...
") // order matters here!
29 // "...
" before ".
" or "...
" will be lexed as 3
30ENUM(T(DOT), "dot
", ".
")
31ENUM(T(COMMA), "comma
", ",
")
32ENUM(T(SCOPE), "scope
", "::
")
33ENUM(T(COLON), "colon
", ":
")
34ENUM(T(ARROW), "arrow
", "->
")
35ENUM(T(THICK_ARROW), "thick-arrow
", "=>
")
36ENUM(T(SEMICOLON), "semicolon
", ";
") // maybe
41ENUM(T(EQ), "equal
", "==
")
42ENUM(T(ASSIGN), "assign
", "=
")
43ENUM(T(PLUS_ASSIGN), "plus-assign
", "+=
")
44ENUM(T(PLUS), "plus
", "+
")
45ENUM(T(MINUS_ASSIGN), "minus-assign
", "-=
")
46ENUM(T(MINUS), "minus
", "-
")
47ENUM(T(POW_ASSIGN), "power-assign
", "**=
")
48ENUM(T(POW), "power
", "**
")
49ENUM(T(MUL_ASSIGN), "multiply-assign
", "*=
")
50ENUM(T(MUL), "multiply
", "*
")
51ENUM(T(DIV_ASSIGN), "divide-assign
", "/=
")
52ENUM(T(DIV), "divide
", "/
")
53ENUM(T(MOD_ASSIGN), "modulo-assign
", "%=
")
54ENUM(T(MOD), "modulo
", "%
")
55ENUM(T(NEQ), "not-equal
", "!=
")
56ENUM(T(LESS_OR_EQ), "less-than-or-equal-to
", "<=
")
57ENUM(T(GREATER_OR_EQ), "greater-than-or-equal-to
", ">=
")
58ENUM(T(BIT_SHL_ASSIGN), "bitwise-shift-left-assign
", "<<=
")
59ENUM(T(BIT_SHL), "bitwise-shift-left
", "<<
")
60ENUM(T(BIT_SHR_ASSIGN), "bitwise-shift-right-assign
", ">>=
")
61ENUM(T(BIT_SHR), "bitwise-shift-right
", ">>
")
62ENUM(T(LESS), "less-than
", "<
")
63ENUM(T(GREATER), "greater-than
", ">
")
64ENUM(T(LOG_AND), "logical-and
", "&&
")
65ENUM(T(LOG_OR), "logical-or
", "||
")
66ENUM(T(LOG_NOT), "logical-not
", "!!
")
67ENUM(T(BIT_AND_ASSIGN), "bitwise-and-assign
", "&=
")
68ENUM(T(BIT_AND), "bitwise-and
", "&
")
69ENUM(T(BIT_OR_ASSIGN), "bitwise-or-assign
", "|=
")
70ENUM(T(BIT_OR), "bitwise-or
", "|
")
71ENUM(T(BIT_NOT), "bitwise-not
", "!
")
72ENUM(T(BIT_XOR_ASSIGN), "bitwise-xor-assign
", "^=
")
73ENUM(T(BIT_XOR), "bitwise-xor
", "^
")
75#ifdef _PD_OUT_OF_TOKEN_TYPE_H
80#ifdef _PD_OUT_OF_TOKEN_TYPE_H
81 #undef _PD_OUT_OF_TOKEN_TYPE_H
Custom enum definitions with associated data.