OpenMiner  0.0.1a
Voxel game engine
Public Types | Public Member Functions | Static Public Member Functions | List of all members
sol::function_detail::upvalue_free_function< Function, is_yielding > Struct Template Reference

#include <sol.hpp>

Public Types

typedef std::remove_pointer_t< std::decay_t< Function > > function_type
 
typedef meta::bind_traits< function_typetraits_type
 

Public Member Functions

int operator() (lua_State *L)
 

Static Public Member Functions

static int real_call (lua_State *L) noexcept(traits_type::is_noexcept)
 
static int call (lua_State *L)
 

Member Typedef Documentation

§ function_type

template<typename Function , bool is_yielding>
typedef std::remove_pointer_t<std::decay_t<Function> > sol::function_detail::upvalue_free_function< Function, is_yielding >::function_type

§ traits_type

template<typename Function , bool is_yielding>
typedef meta::bind_traits<function_type> sol::function_detail::upvalue_free_function< Function, is_yielding >::traits_type

Member Function Documentation

§ call()

template<typename Function , bool is_yielding>
static int sol::function_detail::upvalue_free_function< Function, is_yielding >::call ( lua_State *  L)
inlinestatic
13910  {
13911  int nr = detail::typed_static_trampoline<decltype(&real_call), (&real_call)>(L);
13912  if (is_yielding) {
13913  return lua_yield(L, nr);
13914  }
13915  else {
13916  return nr;
13917  }
13918  }

§ operator()()

template<typename Function , bool is_yielding>
int sol::function_detail::upvalue_free_function< Function, is_yielding >::operator() ( lua_State *  L)
inline
13920  {
13921  return call(L);
13922  }
static int call(lua_State *L)
Definition: sol.hpp:13910

§ real_call()

template<typename Function , bool is_yielding>
static int sol::function_detail::upvalue_free_function< Function, is_yielding >::real_call ( lua_State *  L)
inlinestaticnoexcept
13904  {
13905  auto udata = stack::stack_detail::get_as_upvalues<function_type*>(L);
13906  function_type* fx = udata.first;
13907  return call_detail::call_wrapped<void, true, false>(L, fx);
13908  }
std::remove_pointer_t< std::decay_t< Function > > function_type
Definition: sol.hpp:13901

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