ChaiScript
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | List of all members
chaiscript::AST_Node Struct Referenceabstract

Struct that doubles as both a parser ast_node and an AST node. More...

#include <chaiscript_common.hpp>

Inheritance diagram for chaiscript::AST_Node:
Inheritance graph
[legend]
Collaboration diagram for chaiscript::AST_Node:
Collaboration graph
[legend]

Public Member Functions

const std::string & filename () const noexcept
 
const File_Positionstart () const noexcept
 
const File_Positionend () const noexcept
 
std::string pretty_print () const
 
virtual std::vector< std::reference_wrapper< AST_Node > > get_children () const =0
 
virtual Boxed_Value eval (const chaiscript::detail::Dispatch_State &t_e) const =0
 
std::string to_string (const std::string &t_prepend="") const
 Prints the contents of an AST node, including its children, recursively.
 
 AST_Node (AST_Node &&)=default
 
AST_Nodeoperator= (AST_Node &&)=delete
 
 AST_Node (const AST_Node &)=delete
 
AST_Nodeoperator= (const AST_Node &)=delete
 

Static Public Member Functions

static bool get_bool_condition (const Boxed_Value &t_bv, const chaiscript::detail::Dispatch_State &t_ss)
 

Public Attributes

const AST_Node_Type identifier
 
const std::string text
 
Parse_Location location
 

Protected Member Functions

 AST_Node (std::string t_ast_node_text, AST_Node_Type t_id, Parse_Location t_loc)
 

Detailed Description

Struct that doubles as both a parser ast_node and an AST node.


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