Expand AST node ids to support the lexer tokens and grammar rules

This commit is contained in:
omicron 2025-04-01 19:26:54 +02:00
parent 81be56de33
commit ea5df2d129

View File

@ -11,9 +11,39 @@ typedef enum node_id {
NODE_INVALID,
NODE_PROGRAM,
NODE_DIRECTIVE,
NODE_STATEMENT,
NODE_LABEL,
NODE_INSTRUCTION
NODE_DIRECTIVE,
NODE_INSTRUCTION,
NODE_OPERANDS,
NODE_OPERAND,
NODE_REGISTER,
NODE_IMMEDIATE,
NODE_MEMORY,
NODE_NUMBER,
NODE_LABEL_REFERENCE,
NODE_MEMORY_EXPRESSION,
NODE_REGISTER_EXPRESSION,
NODE_REGISTER_INDEX,
NODE_REGISTER_OFFSET,
NODE_PLUS_OR_MINUS,
// Primitive nodes
NODE_IDENTIFIER,
NODE_DECIMAL,
NODE_HEXADECIMAL,
NODE_OCTAL,
NODE_BINARY,
NODE_CHAR,
NODE_STRING,
NODE_COLON,
NODE_COMMA,
NODE_LBRACKET,
NODE_RBRACKET,
NODE_PLUS,
NODE_MINUS,
NODE_ASTERISK,
NODE_DOT,
} node_id_t;
typedef struct ast_node ast_node_t;