Moved type defs

This commit is contained in:
Rafał Grodziński
2025-06-20 12:52:35 +09:00
parent d579ca925c
commit c1fe7bedf1
4 changed files with 61 additions and 61 deletions

View File

@@ -10,6 +10,16 @@ class StatementExpression;
using namespace std;
enum class ExpressionKind {
LITERAL,
GROUPING,
BINARY,
IF_ELSE,
VAR,
CALL,
INVALID
};
//
// Expression
class Expression {

View File

@@ -16,6 +16,16 @@ class StatementInvalid;
using namespace std;
enum class StatementKind {
FUNCTION_DECLARATION,
VAR_DECLARATION,
BLOCK,
RETURN,
EXPRESSION,
META_EXTERN_FUNCTION,
INVALID
};
//
// Statement
class Statement {

View File

@@ -7,6 +7,47 @@
using namespace std;
enum class TokenKind {
PLUS,
MINUS,
STAR,
SLASH,
PERCENT,
EQUAL,
NOT_EQUAL,
LESS,
LESS_EQUAL,
GREATER,
GREATER_EQUAL,
LEFT_PAREN,
RIGHT_PAREN,
COMMA,
COLON,
SEMICOLON,
QUESTION,
QUESTION_QUESTION,
LEFT_ARROW,
RIGHT_ARROW,
FUNCTION,
RETURN,
BOOL,
INTEGER,
REAL,
IDENTIFIER,
TYPE,
M_EXTERN,
NEW_LINE,
END,
INVALID
};
class Token {
private:
TokenKind kind;

View File

@@ -1,67 +1,6 @@
#ifndef TYPES_H
#define TYPES_H
enum class TokenKind {
PLUS,
MINUS,
STAR,
SLASH,
PERCENT,
EQUAL,
NOT_EQUAL,
LESS,
LESS_EQUAL,
GREATER,
GREATER_EQUAL,
LEFT_PAREN,
RIGHT_PAREN,
COMMA,
COLON,
SEMICOLON,
QUESTION,
QUESTION_QUESTION,
LEFT_ARROW,
RIGHT_ARROW,
FUNCTION,
RETURN,
BOOL,
INTEGER,
REAL,
IDENTIFIER,
TYPE,
M_EXTERN,
NEW_LINE,
END,
INVALID
};
enum class ExpressionKind {
LITERAL,
GROUPING,
BINARY,
IF_ELSE,
VAR,
CALL,
INVALID
};
enum class StatementKind {
FUNCTION_DECLARATION,
VAR_DECLARATION,
BLOCK,
RETURN,
EXPRESSION,
META_EXTERN_FUNCTION,
INVALID
};
enum class ValueType {
NONE,
BOOL,