GameApi 28
Library used by GameApi Builder tool
Loading...
Searching...
No Matches
chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param > Struct Template Reference

#include <function_call_detail.hpp>

Collaboration diagram for chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >:

Public Member Functions

 Build_Function_Caller_Helper (std::vector< Const_Proxy_Function > t_funcs, const Type_Conversions *t_conversions)
template<typename ... P>
Ret operator() (P &&... param)

Static Public Member Functions

template<typename P, typename Q>
static auto box (Q &&q) -> typename std::enable_if< std::is_reference< P >::value &&!std::is_same< chaiscript::Boxed_Value, typename std::remove_const< typename std::remove_reference< P >::type >::type >::value, Boxed_Value >::type
template<typename P, typename Q>
static auto box (Q &&q) -> typename std::enable_if<!std::is_reference< P >::value &&!std::is_same< chaiscript::Boxed_Value, typename std::remove_const< typename std::remove_reference< P >::type >::type >::value, Boxed_Value >::type
template<typename P>
static Boxed_Value box (Boxed_Value bv)

Public Attributes

std::vector< Const_Proxy_Function > m_funcs
const Type_Conversions * m_conversions

Detailed Description

template<typename Ret, typename ... Param>
struct chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >

used internally for unwrapping a function call's types

Constructor & Destructor Documentation

◆ Build_Function_Caller_Helper()

template<typename Ret, typename ... Param>
chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >::Build_Function_Caller_Helper ( std::vector< Const_Proxy_Function > t_funcs,
const Type_Conversions * t_conversions )
inline

Member Function Documentation

◆ box() [1/3]

template<typename Ret, typename ... Param>
template<typename P>
Boxed_Value chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >::box ( Boxed_Value bv)
inlinestatic

◆ box() [2/3]

template<typename Ret, typename ... Param>
template<typename P, typename Q>
auto chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >::box ( Q && q) ->typenamestd::enable_if< std::is_reference< P >::value &&!std::is_same< chaiscript::Boxed_Value, typenamestd::remove_const< typenamestd::remove_reference< P >::type >::type >::value, Boxed_Value >::type
inlinestatic
Here is the caller graph for this function:

◆ box() [3/3]

template<typename Ret, typename ... Param>
template<typename P, typename Q>
auto chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >::box ( Q && q) ->typenamestd::enable_if<!std::is_reference< P >::value &&!std::is_same< chaiscript::Boxed_Value, typenamestd::remove_const< typenamestd::remove_reference< P >::type >::type >::value, Boxed_Value >::type
inlinestatic

◆ operator()()

template<typename Ret, typename ... Param>
template<typename ... P>
Ret chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >::operator() ( P &&... param)
inline

Member Data Documentation

◆ m_conversions

template<typename Ret, typename ... Param>
const Type_Conversions* chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >::m_conversions

◆ m_funcs

template<typename Ret, typename ... Param>
std::vector<Const_Proxy_Function> chaiscript::dispatch::detail::Build_Function_Caller_Helper< Ret, Param >::m_funcs

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