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

#include <proxy_functions.hpp>

Inheritance diagram for chaiscript::dispatch::Bound_Function:
Collaboration diagram for chaiscript::dispatch::Bound_Function:

Public Member Functions

 Bound_Function (const Const_Proxy_Function &t_f, const std::vector< Boxed_Value > &t_args)
bool operator== (const Proxy_Function_Base &t_f) const override
bool call_match (const std::vector< Boxed_Value > &vals, const Type_Conversions_State &t_conversions) const override
std::vector< Const_Proxy_Function > get_contained_functions () const override
std::vector< Boxed_Value > build_param_list (const std::vector< Boxed_Value > &params) 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
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

Boxed_Value do_call (const std::vector< Boxed_Value > &params, const Type_Conversions_State &t_conversions) const override
Protected Member Functions inherited from chaiscript::dispatch::Proxy_Function_Base
 Proxy_Function_Base (std::vector< Type_Info > t_types, int t_arity)

Static Protected Member Functions

static std::vector< Type_Info > build_param_type_info (const Const_Proxy_Function &t_f, const std::vector< Boxed_Value > &t_args)
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)

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)
Protected Attributes inherited from chaiscript::dispatch::Proxy_Function_Base
std::vector< Type_Info > m_types
int m_arity
bool m_has_arithmetic_param

Detailed Description

An implementation of Proxy_Function that takes a Proxy_Function and substitutes bound parameters into the parameter list at runtime, when call() is executed. it is used for bind(function, param1, _, param2) style calls

Constructor & Destructor Documentation

◆ Bound_Function()

chaiscript::dispatch::Bound_Function::Bound_Function ( const Const_Proxy_Function & t_f,
const std::vector< Boxed_Value > & t_args )
inline

Member Function Documentation

◆ build_param_list()

std::vector< Boxed_Value > chaiscript::dispatch::Bound_Function::build_param_list ( const std::vector< Boxed_Value > & params) const
inline
Here is the caller graph for this function:

◆ build_param_type_info()

std::vector< Type_Info > chaiscript::dispatch::Bound_Function::build_param_type_info ( const Const_Proxy_Function & t_f,
const std::vector< Boxed_Value > & t_args )
inlinestaticprotected
Here is the caller graph for this function:

◆ call_match()

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

◆ do_call()

Boxed_Value chaiscript::dispatch::Bound_Function::do_call ( const std::vector< Boxed_Value > & params,
const Type_Conversions_State & t_conversions ) const
inlineoverrideprotectedvirtual

◆ get_contained_functions()

std::vector< Const_Proxy_Function > chaiscript::dispatch::Bound_Function::get_contained_functions ( ) const
inlineoverridevirtual

◆ operator==()

bool chaiscript::dispatch::Bound_Function::operator== ( const Proxy_Function_Base & t_f) const
inlineoverridevirtual

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