#include #ifndef LEXER_H #define LEXER_H const std::string EMPTY_STRING = ""; enum token_type{ sum, substraction, division, multiplication, power, variable, number, sin, cos, tan, function, left_parens, right_parens }; struct Token{ token_type type; std::string value; }; class Lexer{ private: std::string text; size_t txt_ptr; Token current_token; void setCurrentToken(Token val); public: Lexer(std::string text); void nextToken(); Token getCurrentToken(); }; #endif /* LEXER_H */