123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- #include "TokenType.h"
- #include <iostream>
- TokenTypeClass::~TokenTypeClass()
- {
- }
- string TokenTypeClass::getName() const
- {
- return typeName;
- }
- int TokenTypeClass::getLevel() const
- {
- return level;
- }
- bool TokenTypeClass::operator==(const TokenTypeClass& t) const
- {
- return this == &t;
- }
- bool TokenTypeClass::operator!=(const TokenTypeClass& t) const
- {
- return this != &t;
- }
- std::ostream& operator<<(std::ostream& os, const TokenType& c)
- {
- return os << c.getName();
- }
- namespace Tokens
- {
- const TokenTypeClass FLOAT("float");
- const TokenTypeClass TRUE("bool(true)");
- const TokenTypeClass FALSE("bool(false)");
- const TokenTypeClass TNULL("null");
- const TokenTypeClass TEXT("String");
- const TokenTypeClass LABEL("Label");
- const TokenTypeClass VAR("var");
- const TokenTypeClass GLOBAL("$");
-
- const TokenTypeClass INC("++", 2);
- const TokenTypeClass DEC("--", 2);
- const TokenTypeClass INVERT("!", 2);
- const TokenTypeClass BIT_INVERT("~", 2);
- const TokenTypeClass MUL("*", 3);
- const TokenTypeClass DIV("/", 3);
- const TokenTypeClass MOD("%", 3);
- const TokenTypeClass UNARY_ADD("u+", 2);
- const TokenTypeClass UNARY_SUB("u-", 2);
- const TokenTypeClass ADD("+", 4);
- const TokenTypeClass SUB("-", 4);
- const TokenTypeClass LEFT_SHIFT("<<", 5);
- const TokenTypeClass RIGHT_SHIFT(">>", 5);
- const TokenTypeClass LESS("<", 6);
- const TokenTypeClass LESS_EQUAL("<=", 6);
- const TokenTypeClass GREATER(">", 6);
- const TokenTypeClass GREATER_EQUAL(">=", 6);
- const TokenTypeClass EQUAL("==", 7);
- const TokenTypeClass NOT_EQUAL("!=", 7);
- const TokenTypeClass BIT_AND("&", 8);
- const TokenTypeClass BIT_XOR("^", 9);
- const TokenTypeClass BIT_OR("|", 10);
- const TokenTypeClass AND("&&", 11);
- const TokenTypeClass OR("||", 12);
- const TokenTypeClass SET("=", 14);
- const TokenTypeClass ADD_SET("+=", 14);
- const TokenTypeClass SUB_SET("-=", 14);
- const TokenTypeClass MUL_SET("*=", 14);
- const TokenTypeClass DIV_SET("/=", 14);
- const TokenTypeClass MOD_SET("%=", 14);
- const TokenTypeClass LEFT_SHIFT_SET("<<=", 14);
- const TokenTypeClass RIGHT_SHIFT_SET(">>=", 14);
- const TokenTypeClass BIT_AND_SET("&=", 14);
- const TokenTypeClass BIT_XOR_SET("^=", 14);
- const TokenTypeClass BIT_OR_SET("|=", 14);
- const TokenTypeClass COMMA(",", 15);
- const TokenTypeClass OPEN_BRACKET("(", 50);
- const TokenTypeClass CLOSE_BRACKET(")", 50);
- const TokenTypeClass OPEN_SQUARE_BRACKET("[", 1);
- const TokenTypeClass CLOSE_SQUARE_BRACKET("]", 1);
- const TokenTypeClass OPEN_CURVED_BRACKET("{");
- const TokenTypeClass CLOSE_CURVED_BRACKET("}");
- const TokenTypeClass SEMICOLON(";");
-
- const TokenTypeClass IF("if");
- const TokenTypeClass ELSE_IF("else if");
- const TokenTypeClass ELSE("else");
- const TokenTypeClass FOR("for");
- const TokenTypeClass WHILE("while");
- const TokenTypeClass FUNCTION("function");
- const TokenTypeClass BREAK("break");
- const TokenTypeClass CONTINUE("continue");
- const TokenTypeClass RETURN("return");
- const TokenTypeClass TRY("try");
- const TokenTypeClass CATCH("catch");
- const TokenTypeClass END_OF_FILE("end_of_file");
- };
|