#ifndef TOKEN_H #define TOKEN_H typedef enum { T_VOID, T_INT32, T_INT64, T_BOOL, T_FLOAT, T_CONST_INT32, T_CONST_INT64, T_CONST_FLOAT, T_TEXT, T_NULLPTR, T_TRUE, T_FALSE, T_ADD, T_SUB, T_MUL, T_DIV, T_MOD, T_LESS, T_LESS_EQUAL, T_GREATER, T_GREATER_EQUAL, T_EQUAL, T_NOT_EQUAL, T_NOT, T_AND, T_OR, T_BIT_NOT, T_BIT_AND, T_BIT_OR, T_BIT_XOR, T_LEFT_SHIFT, T_RIGHT_SHIFT, T_SET, T_ADD_SET, T_SUB_SET, T_MUL_SET, T_DIV_SET, T_MOD_SET, T_BIT_AND_SET, T_BIT_OR_SET, T_BIT_XOR_SET, T_LEFT_SHIFT_SET, T_RIGHT_SHIFT_SET, T_INCREMENT, T_DECREMENT, T_LITERAL, T_IF, T_ELSE, T_WHILE, T_FOR, T_BREAK, T_CONTINUE, T_RETURN, T_STRUCT, T_COMMA, T_SEMICOLON, T_OPEN_BRACKET, T_CLOSE_BRACKET, T_OPEN_CURVED_BRACKET, T_CLOSE_CURVED_BRACKET, T_POINT, T_ARROW, T_OPEN_SQUARE_BRACKET, T_CLOSE_SQUARE_BRACKET, T_NEW, T_DELETE, T_LENGTH, T_END } Token; const char* tGetName(Token token); Token tFromName(const char* name); #endif