GameApi 28
Library used by GameApi Builder tool
Loading...
Searching...
No Matches
chaiscript::dispatch::Dynamic_Proxy_Function Class Reference

#include <proxy_functions.hpp>

Inheritance diagram for chaiscript::dispatch::Dynamic_Proxy_Function:
Collaboration diagram for chaiscript::dispatch::Dynamic_Proxy_Function:

Public Member Functions

 Dynamic_Proxy_Function (const int t_arity, std::shared_ptr< AST_Node > t_parsenode, Param_Types t_param_types=Param_Types(), Proxy_Function t_guard=Proxy_Function())
bool operator== (const Proxy_Function_Base &rhs) const override
bool call_match (const std::vector< Boxed_Value > &vals, const Type_Conversions_State &t_conversions) const override
Proxy_Function get_guard () const
bool has_parse_tree () const
const AST_Node & get_parse_tree () const
Public Member Functions inherited from chaiscript::dispatch::Proxy_Function_Base
virtual ~Proxy_Function_Base ()=default
Boxed_Value operator() (const std::vector< Boxed_Value > &params, const chaiscript::Type_Conversions_State &t_conversions) const
const std::vector< Type_Info > & get_param_types () const
virtual bool is_attribute_function () const
bool has_arithmetic_param () const
virtual std::vector< std::shared_ptr< const Proxy_Function_Base > > get_contained_functions () const
bool filter (const std::vector< Boxed_Value > &vals, const Type_Conversions_State &t_conversions) const
int get_arity () const
virtual bool compare_first_type (const Boxed_Value &bv, const Type_Conversions_State &t_conversions) const

Protected Member Functions

bool test_guard (const std::vector< Boxed_Value > &params, const Type_Conversions_State &t_conversions) const
std::pair< bool, bool > call_match_internal (const std::vector< Boxed_Value > &vals, const Type_Conversions_State &t_conversions) const
Protected Member Functions inherited from chaiscript::dispatch::Proxy_Function_Base
virtual Boxed_Value do_call (const std::vector< Boxed_Value > &params, const Type_Conversions_State &t_conversions) const =0
 Proxy_Function_Base (std::vector< Type_Info > t_types, int t_arity)

Protected Attributes

Param_Types m_param_types
Protected Attributes inherited from chaiscript::dispatch::Proxy_Function_Base
std::vector< Type_Info > m_types
int m_arity
bool m_has_arithmetic_param

Additional Inherited Members

Static Public Member Functions inherited from chaiscript::dispatch::Proxy_Function_Base
static bool compare_type_to_param (const Type_Info &ti, const Boxed_Value &bv, const Type_Conversions_State &t_conversions)
Static Protected Member Functions inherited from chaiscript::dispatch::Proxy_Function_Base
static bool compare_types (const std::vector< Type_Info > &tis, const std::vector< Boxed_Value > &bvs, const Type_Conversions_State &t_conversions)

Detailed Description

A Proxy_Function implementation that is not type safe, the called function is expecting a vector<Boxed_Value> that it works with how it chooses.

Constructor & Destructor Documentation

◆ Dynamic_Proxy_Function()

chaiscript::dispatch::Dynamic_Proxy_Function::Dynamic_Proxy_Function ( const int t_arity,
std::shared_ptr< AST_Node > t_parsenode,
Param_Types t_param_types = Param_Types(),
Proxy_Function t_guard = Proxy_Function() )
inline
Here is the caller graph for this function:

Member Function Documentation

◆ call_match()

bool chaiscript::dispatch::Dynamic_Proxy_Function::call_match ( const std::vector< Boxed_Value > & vals,
const Type_Conversions_State & t_conversions ) const
inlineoverridevirtual

◆ call_match_internal()

std::pair< bool, bool > chaiscript::dispatch::Dynamic_Proxy_Function::call_match_internal ( const std::vector< Boxed_Value > & vals,
const Type_Conversions_State & t_conversions ) const
inlineprotected
Here is the caller graph for this function:

◆ get_guard()

Proxy_Function chaiscript::dispatch::Dynamic_Proxy_Function::get_guard ( ) const
inline

◆ get_parse_tree()

const AST_Node & chaiscript::dispatch::Dynamic_Proxy_Function::get_parse_tree ( ) const
inline

◆ has_parse_tree()

bool chaiscript::dispatch::Dynamic_Proxy_Function::has_parse_tree ( ) const
inline

◆ operator==()

bool chaiscript::dispatch::Dynamic_Proxy_Function::operator== ( const Proxy_Function_Base & rhs) const
inlineoverridevirtual

◆ test_guard()

bool chaiscript::dispatch::Dynamic_Proxy_Function::test_guard ( const std::vector< Boxed_Value > & params,
const Type_Conversions_State & t_conversions ) const
inlineprotected
Here is the caller graph for this function:

Member Data Documentation

◆ m_param_types

Param_Types chaiscript::dispatch::Dynamic_Proxy_Function::m_param_types
protected

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