Token.cpp 621 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #include "Token.h"
  2. #include <sstream>
  3. Token::Token(TokenType tt, int line) : type(tt), line(line)
  4. {
  5. }
  6. Token::~Token()
  7. {
  8. }
  9. TokenType Token::getType() const
  10. {
  11. return type;
  12. }
  13. int Token::getLine() const
  14. {
  15. return line;
  16. }
  17. const void* Token::getData() const
  18. {
  19. return nullptr;
  20. }
  21. string Token::getDataString() const
  22. {
  23. return "";
  24. }
  25. string Token::toString() const
  26. {
  27. stringstream ss;
  28. ss << '(';
  29. ss << line;
  30. ss << ", ";
  31. ss << TokenTypeUtils::getEnumName(type);
  32. if(getData() != nullptr)
  33. {
  34. ss << ", ";
  35. ss << getDataString();
  36. }
  37. ss << ')';
  38. return ss.str();
  39. }