Expand AST node ids to support the lexer tokens and grammar rules
This commit is contained in:
		
							
								
								
									
										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; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user