Astaroth  2.2
ast.h File Reference
#include <assert.h>
#include <stdlib.h>
+ Include dependency graph for ast.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  astnode_s
 

Macros

#define BUFFER_SIZE   (4096)
 
#define GEN_ID(X)   X
 
#define GEN_STR(X)   #X
 
#define FOR_NODE_TYPES(FUNC)
 

Typedefs

typedef struct astnode_s ASTNode
 

Enumerations

enum  NodeType { FOR_NODE_TYPES =(GEN_ID), NUM_NODE_TYPES }
 

Variables

ASTNoderoot
 

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE   (4096)

◆ FOR_NODE_TYPES

#define FOR_NODE_TYPES (   FUNC)
Value:
FUNC(NODE_UNKNOWN), \
FUNC(NODE_DEFINITION), \
FUNC(NODE_GLOBAL_DEFINITION), \
FUNC(NODE_ITERATION_STATEMENT), \
FUNC(NODE_DECLARATION), \
FUNC(NODE_DECLARATION_LIST), \
FUNC(NODE_ARRAY_DECLARATION), \
FUNC(NODE_TYPE_DECLARATION), \
FUNC(NODE_TYPE_QUALIFIER), \
FUNC(NODE_TYPE_SPECIFIER), \
FUNC(NODE_IDENTIFIER), \
FUNC(NODE_FUNCTION_DEFINITION), \
FUNC(NODE_FUNCTION_DECLARATION), \
FUNC(NODE_COMPOUND_STATEMENT), \
FUNC(NODE_FUNCTION_PARAMETER_DECLARATION), \
FUNC(NODE_MULTIDIM_SUBSCRIPT_EXPRESSION), \
FUNC(NODE_REAL_NUMBER), \
FUNC(NODE_FOR_EXPRESSION)

◆ GEN_ID

#define GEN_ID (   X)    X

◆ GEN_STR

#define GEN_STR (   X)    #X

Typedef Documentation

◆ ASTNode

typedef struct astnode_s ASTNode

Enumeration Type Documentation

◆ NodeType

enum NodeType
Enumerator
FOR_NODE_TYPES 
NUM_NODE_TYPES 

Variable Documentation

◆ root

ASTNode* root