GameApi 28
Library used by GameApi Builder tool
Loading...
Searching...
No Matches
chaiscript::eval::AST_Node_Impl< T > Struct Template Reference

#include <chaiscript_eval.hpp>

Inheritance diagram for chaiscript::eval::AST_Node_Impl< T >:
Collaboration diagram for chaiscript::eval::AST_Node_Impl< T >:

Public Member Functions

 AST_Node_Impl (std::string t_ast_node_text, AST_Node_Type t_id, Parse_Location t_loc, std::vector< AST_Node_Impl_Ptr< T > > t_children=std::vector< AST_Node_Impl_Ptr< T > >())
std::vector< std::reference_wrapper< AST_Node > > get_children () const final
Boxed_Value eval (const chaiscript::detail::Dispatch_State &t_e) const final
Public Member Functions inherited from chaiscript::AST_Node
const std::string & filename () const
const File_Position & start () const
const File_Position & end () const
std::string pretty_print () const
std::string to_string (const std::string &t_prepend="") const
 Prints the contents of an AST node, including its children, recursively.
virtual ~AST_Node ()=default
 AST_Node (AST_Node &&)=default
AST_Node & operator= (AST_Node &&)=default
 AST_Node (const AST_Node &)=delete
AST_Node & operator= (const AST_Node &)=delete

Static Public Member Functions

static bool get_scoped_bool_condition (const AST_Node_Impl< T > &node, const chaiscript::detail::Dispatch_State &t_ss)
Static Public Member Functions inherited from chaiscript::AST_Node
static bool get_bool_condition (const Boxed_Value &t_bv, const chaiscript::detail::Dispatch_State &t_ss)

Public Attributes

std::vector< AST_Node_Impl_Ptr< T > > children
Public Attributes inherited from chaiscript::AST_Node
const AST_Node_Type identifier
const std::string text
Parse_Location location

Protected Member Functions

virtual Boxed_Value eval_internal (const chaiscript::detail::Dispatch_State &) const
Protected Member Functions inherited from chaiscript::AST_Node
 AST_Node (std::string t_ast_node_text, AST_Node_Type t_id, Parse_Location t_loc)

Constructor & Destructor Documentation

◆ AST_Node_Impl()

template<typename T>
chaiscript::eval::AST_Node_Impl< T >::AST_Node_Impl ( std::string t_ast_node_text,
AST_Node_Type t_id,
Parse_Location t_loc,
std::vector< AST_Node_Impl_Ptr< T > > t_children = std::vector<AST_Node_Impl_Ptr<T>>() )
inline

Member Function Documentation

◆ eval()

template<typename T>
Boxed_Value chaiscript::eval::AST_Node_Impl< T >::eval ( const chaiscript::detail::Dispatch_State & t_e) const
inlinefinalvirtual

Implements chaiscript::AST_Node.

Here is the caller graph for this function:

◆ eval_internal()

template<typename T>
virtual Boxed_Value chaiscript::eval::AST_Node_Impl< T >::eval_internal ( const chaiscript::detail::Dispatch_State & ) const
inlineprotectedvirtual

Reimplemented in chaiscript::eval::Array_Call_AST_Node< T >, chaiscript::eval::Assign_Decl_AST_Node< T >, chaiscript::eval::Attr_Decl_AST_Node< T >, chaiscript::eval::Binary_Operator_AST_Node< T >, chaiscript::eval::Block_AST_Node< T >, chaiscript::eval::Break_AST_Node< T >, chaiscript::eval::Case_AST_Node< T >, chaiscript::eval::Class_AST_Node< T >, chaiscript::eval::Compiled_AST_Node< T >, chaiscript::eval::Constant_AST_Node< T >, chaiscript::eval::Continue_AST_Node< T >, chaiscript::eval::Def_AST_Node< T >, chaiscript::eval::Default_AST_Node< T >, chaiscript::eval::Dot_Access_AST_Node< T >, chaiscript::eval::Equation_AST_Node< T >, chaiscript::eval::File_AST_Node< T >, chaiscript::eval::Fold_Right_Binary_Operator_AST_Node< T >, chaiscript::eval::For_AST_Node< T >, chaiscript::eval::Fun_Call_AST_Node< T >, chaiscript::eval::Global_Decl_AST_Node< T >, chaiscript::eval::Id_AST_Node< T >, chaiscript::eval::If_AST_Node< T >, chaiscript::eval::Inline_Array_AST_Node< T >, chaiscript::eval::Inline_Map_AST_Node< T >, chaiscript::eval::Inline_Range_AST_Node< T >, chaiscript::eval::Lambda_AST_Node< T >, chaiscript::eval::Logical_And_AST_Node< T >, chaiscript::eval::Logical_Or_AST_Node< T >, chaiscript::eval::Method_AST_Node< T >, chaiscript::eval::Noop_AST_Node< T >, chaiscript::eval::Prefix_AST_Node< T >, chaiscript::eval::Ranged_For_AST_Node< T >, chaiscript::eval::Reference_AST_Node< T >, chaiscript::eval::Return_AST_Node< T >, chaiscript::eval::Scopeless_Block_AST_Node< T >, chaiscript::eval::Switch_AST_Node< T >, chaiscript::eval::Try_AST_Node< T >, chaiscript::eval::Unused_Return_Fun_Call_AST_Node< T >, chaiscript::eval::Var_Decl_AST_Node< T >, and chaiscript::eval::While_AST_Node< T >.

Here is the caller graph for this function:

◆ get_children()

template<typename T>
std::vector< std::reference_wrapper< AST_Node > > chaiscript::eval::AST_Node_Impl< T >::get_children ( ) const
inlinefinalvirtual

Implements chaiscript::AST_Node.

◆ get_scoped_bool_condition()

template<typename T>
bool chaiscript::eval::AST_Node_Impl< T >::get_scoped_bool_condition ( const AST_Node_Impl< T > & node,
const chaiscript::detail::Dispatch_State & t_ss )
inlinestatic
Here is the caller graph for this function:

Member Data Documentation

◆ children

template<typename T>
std::vector<AST_Node_Impl_Ptr<T> > chaiscript::eval::AST_Node_Impl< T >::children

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