Initial commit
diff --git a/Token.h b/Token.h
new file mode 100644
index 0000000..bb46127
--- /dev/null
+++ b/Token.h
@@ -0,0 +1,36 @@
+#pragma once
+
+#include <QList>
+#include <QChar>
+
+class Token {
+public:
+ Token();
+ Token(const Token &other);
+
+ explicit Token(QChar symbol);
+ explicit Token(QString &&identifier);
+ explicit Token(QList<Token> &&parenthesized);
+ Token(char varType, const QString &&name);
+
+ bool operator ==(const Token &other);
+
+ ~Token();
+
+ bool isSym();
+ bool isIdent();
+ bool isParen();
+ bool isVar();
+
+ QList<Token> parenContent();
+
+private:
+ enum Type {
+ SYM, IDENT, PAREN, VAR,
+ };
+
+ int _type = 0;
+ QString _stringVal = "";
+ QList<Token> *_listVal = nullptr;
+ QChar _charVal = 0;
+};