Expand AST node ids to support the lexer tokens and grammar rules
This commit is contained in:
parent
81be56de33
commit
ea5df2d129
34
src/ast.h
34
src/ast.h
@ -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;
|
||||
|
Loading…
x
Reference in New Issue
Block a user