Purple  0.1
Standard Language Specification
Public Attributes | List of all members
ASTNode Struct Reference

Component of the abstract syntax tree built during parsing. More...

#include <tree.h>

Collaboration diagram for ASTNode:
Collaboration graph

Public Attributes

TokenType ttype
 The TokenType of the given token. More...
 
struct ASTNodeleft
 
struct ASTNodemid
 
struct ASTNoderight
 
Number tree_type
 
NumberType largest_number_type
 
bool is_rvalue
 
char filename [256]
 
int line_number
 
int char_number
 
unsigned long long int num_args
 
struct ASTNode ** function_call_arguments
 
union {
   number_literal_type   number_value
 
   char   symbol_name [MAX_IDENTIFIER_LENGTH]
 
value
 

Detailed Description

Component of the abstract syntax tree built during parsing.

Member Data Documentation

◆ char_number

int ASTNode::char_number

Character number of this Token

◆ filename

char ASTNode::filename[256]

Filename of this Token

◆ function_call_arguments

struct ASTNode** ASTNode::function_call_arguments

Array of arguments for a function call node

◆ is_rvalue

bool ASTNode::is_rvalue

Whether or not this ASTNode contains an RValue

◆ largest_number_type

NumberType ASTNode::largest_number_type

Largest NumberType in subtree

◆ left

struct ASTNode* ASTNode::left

The left child of the AST Node

◆ line_number

int ASTNode::line_number

Line number of this Token

◆ mid

struct ASTNode* ASTNode::mid

The middle child of the AST Node

◆ num_args

unsigned long long int ASTNode::num_args

Size of function_call_arguments

◆ number_value

number_literal_type ASTNode::number_value

Value of integer token

◆ right

struct ASTNode* ASTNode::right

The right child of the AST Node

◆ symbol_name

char ASTNode::symbol_name[MAX_IDENTIFIER_LENGTH]

Name of this identifier token

◆ tree_type

Number ASTNode::tree_type

Numerical type of tree

◆ ttype

TokenType ASTNode::ttype

The TokenType of the given token.

◆ 

union { ... } ASTNode::value

Value of AST Node's Token


The documentation for this struct was generated from the following file: