DoubleToken.cpp 479 B

12345678910111213141516171819202122232425262728
  1. #include "DoubleToken.h"
  2. DoubleToken::DoubleToken(TokenType tt, int line, double data) : Token(tt, line), data(data)
  3. {
  4. }
  5. DoubleToken::~DoubleToken()
  6. {
  7. }
  8. const void* DoubleToken::getData() const
  9. {
  10. return &data;
  11. }
  12. string DoubleToken::getDataString() const
  13. {
  14. if(data == (long) data)
  15. {
  16. char buffer[20];
  17. snprintf(buffer, 20, "%lg.0", data);
  18. return buffer;
  19. }
  20. char buffer[20];
  21. snprintf(buffer, 20, "%lg", data);
  22. return buffer;
  23. }