Joos1W Compiler Framework
All Classes Functions Typedefs Pages
parsetree::Identifier Class Reference

A lex node in the parse tree representing an identifier. More...

#include <ParseTree.h>

Inheritance diagram for parsetree::Identifier:

Public Member Functions

std::string_view get_name () const
 
std::ostream & print (std::ostream &os) const override
 Virtual function to print the node.
 
- Public Member Functions inherited from parsetree::Node
size_t num_children () const
 Gets the number of children.
 
Nodechild (size_t i) const
 Gets the child at index i.
 
Type get_node_type () const
 Gets the type of the node.
 
std::string type_string () const
 Operator to turn Type into a string.
 
bool is_poisoned () const
 Check if the tree has been poisoned.
 
SourceRange location () const
 Get the location of the node.
 
Node const * parent () const
 Get the parent of the node.
 
Nodeparent ()
 
void mark ()
 
bool is_marked () const
 
std::ostream & printDot (std::ostream &os) const
 Print the node as a dot file.
 

Protected Member Functions

void printDotNode (DotPrinter &dp) const override
 Custom function to print the DOT node.
 
- Protected Member Functions inherited from parsetree::Node
 Node (SourceRange loc, Type type)
 The enum for each node type. More...
 
template<typename... Args>
 Node (SourceRange loc, BumpAllocator &alloc, Type type, Args &&... args)
 Protected constructor for non-leaf nodes. More...
 

Friends

class ::Joos1WLexer
 
class ::Joos1WParser
 

Additional Inherited Members

- Static Public Member Functions inherited from parsetree::Node
static std::string type_string (Type type)
 Operator to turn Type into a string.
 

Detailed Description

A lex node in the parse tree representing an identifier.

Definition at line 236 of file ParseTree.h.


The documentation for this class was generated from the following files: