#ifndef TOKENTYPE_H #define TOKENTYPE_H #include enum TokenType { NUMBER, STRING, LITERAL, LABEL, TRUE, FALSE, NULL_TOKEN, OPEN_BRACKET, CLOSE_BRACKET, OPEN_SQUARE_BRACKET, CLOSE_SQUARE_BRACKET, OPEN_CURVED_BRACKET, CLOSE_CURVED_BRACKET, SEMICOLON, COMMA, INC, DEC, INVERT, BIT_INVERT, MUL, DIV, MOD, ADD, SUB, ADD_SET, SUB_SET, MUL_SET, DIV_SET, MOD_SET, LEFT_SHIFT, RIGHT_SHIFT, LEFT_SHIFT_SET, RIGHT_SHIFT_SET, BIT_AND_SET, BIT_XOR_SET, BIT_OR_SET, LESS, LESS_EQUAL, GREATER, GREATER_EQUAL, EQUAL, NOT_EQUAL, BIT_AND, BIT_XOR, BIT_OR, AND, OR, SET, IF, ELSE, ELSEIF, WHILE, TRY, CATCH, FOR, FUNCTION, BREAK, CONTINUE, RETURN, EOF_TOKEN }; namespace TokenTypeUtils { std::string getName(TokenType tt); std::string getEnumName(TokenType tt); } #endif