Public Member Functions | Private Types | Private Member Functions | List of all members
sol::basic_function< ref_t, aligned > Class Template Reference

#include <forward.hpp>

Inheritance diagram for sol::basic_function< ref_t, aligned >:
Inheritance graph
[legend]

Public Member Functions

 basic_function ()=default
 
template<typename T , meta::enable< meta::neg< std::is_same< meta::unqualified_t< T >, basic_function >>, meta::neg< std::is_same< base_t, stack_reference >>, meta::neg< std::is_same< lua_nil_t, meta::unqualified_t< T >>>, is_lua_reference< meta::unqualified_t< T >>> = meta::enabler>
 basic_function (T &&r) noexcept
 
 basic_function (const basic_function &)=default
 
 basic_function (basic_function &&)=default
 
 basic_function (const stack_reference &r)
 
 basic_function (stack_reference &&r)
 
 basic_function (lua_nil_t n)
 
template<typename T , meta::enable< is_lua_reference< meta::unqualified_t< T >>> = meta::enabler>
 basic_function (lua_State *L, T &&r)
 
 basic_function (lua_State *L, int index=-1)
 
 basic_function (lua_State *L, ref_index index)
 
template<typename... Ret, typename... Args>
decltype(auto) call (Args &&...args) const
 
template<typename Fx >
int dump (lua_Writer writer, void *userdata, bool strip, Fx &&on_error) const
 
int dump (lua_Writer writer, void *userdata, bool strip=false) const
 
template<typename Container = bytecode>
Container dump () const
 
template<typename Container = bytecode, typename Fx >
Container dump (Fx &&on_error) const
 
template<typename... Args>
unsafe_function_result operator() (Args &&...args) const
 
template<typename... Ret, typename... Args>
decltype(auto) operator() (types< Ret... >, Args &&...args) const
 
basic_functionoperator= (const basic_function &)=default
 
basic_functionoperator= (basic_function &&)=default
 
- Public Member Functions inherited from sol::basic_object< ref_t >
 basic_object () noexcept=default
 
 basic_object (T &&r)
 
 basic_object (lua_State *L, T &&r)
 
 basic_object (lua_nil_t r)
 
 basic_object (const basic_object &)=default
 
 basic_object (basic_object &&)=default
 
 basic_object (const stack_reference &r) noexcept
 
 basic_object (stack_reference &&r) noexcept
 
 basic_object (const proxy_base< Super > &r) noexcept
 
 basic_object (proxy_base< Super > &&r) noexcept
 
 basic_object (lua_State *L, lua_nil_t r) noexcept
 
 basic_object (lua_State *L, int index=-1) noexcept
 
 basic_object (lua_State *L, absolute_index index) noexcept
 
 basic_object (lua_State *L, raw_index index) noexcept
 
 basic_object (lua_State *L, ref_index index) noexcept
 
 basic_object (lua_State *L, in_place_type_t< T >, Args &&...args) noexcept
 
 basic_object (lua_State *L, in_place_t, T &&arg, Args &&...args) noexcept
 
basic_objectoperator= (const basic_object &)=default
 
basic_objectoperator= (basic_object &&)=default
 
basic_objectoperator= (const ref_t &b)
 
basic_objectoperator= (ref_t &&b)
 
basic_objectoperator= (const proxy_base< Super > &r)
 
basic_objectoperator= (proxy_base< Super > &&r)
 
- Public Member Functions inherited from sol::basic_object_base< ref_t >
template<typename T >
decltype(auto) as () const
 
 basic_object_base () noexcept=default
 
 basic_object_base (const basic_object_base &)=default
 
 basic_object_base (basic_object_base &&)=default
 
template<typename T , typename... Args, meta::enable< meta::neg< std::is_same< meta::unqualified_t< T >, basic_object_base >>> = meta::enabler>
 basic_object_base (T &&arg, Args &&...args)
 
template<typename T >
bool is () const
 
basic_object_baseoperator= (const basic_object_base &)=default
 
basic_object_baseoperator= (basic_object_base &&)=default
 

Private Types

using base_t = basic_object< ref_t >
 

Private Member Functions

template<std::size_t... I, typename... Ret>
auto invoke (types< Ret... >, std::index_sequence< I... >, std::ptrdiff_t n) const
 
template<std::size_t I, typename Ret , meta::enable< meta::neg< std::is_void< Ret >>> = meta::enabler>
Ret invoke (types< Ret >, std::index_sequence< I >, std::ptrdiff_t n) const
 
template<std::size_t I>
void invoke (types< void >, std::index_sequence< I >, std::ptrdiff_t n) const
 
unsafe_function_result invoke (types<>, std::index_sequence<>, std::ptrdiff_t n) const
 
void luacall (std::ptrdiff_t argcount, std::ptrdiff_t resultcount) const
 

Additional Inherited Members

- Protected Member Functions inherited from sol::basic_object< ref_t >
 basic_object (detail::no_safety_tag, lua_nil_t n)
 
 basic_object (detail::no_safety_tag, lua_State *L, int index)
 
 basic_object (lua_State *L, detail::global_tag t)
 
 basic_object (detail::no_safety_tag, lua_State *L, ref_index index)
 
 basic_object (detail::no_safety_tag, T &&r) noexcept
 
 basic_object (detail::no_safety_tag, lua_State *L, T &&r) noexcept
 

Detailed Description

template<typename ref_t, bool aligned = false>
class sol::basic_function< ref_t, aligned >

Definition at line 667 of file forward.hpp.

Member Typedef Documentation

template<typename ref_t, bool aligned = false>
using sol::basic_function< ref_t, aligned >::base_t = basic_object<ref_t>
private

Definition at line 18945 of file sol.hpp.

Constructor & Destructor Documentation

template<typename ref_t, bool aligned = false>
sol::basic_function< ref_t, aligned >::basic_function ( )
default
template<typename ref_t, bool aligned = false>
template<typename T , meta::enable< meta::neg< std::is_same< meta::unqualified_t< T >, basic_function >>, meta::neg< std::is_same< base_t, stack_reference >>, meta::neg< std::is_same< lua_nil_t, meta::unqualified_t< T >>>, is_lua_reference< meta::unqualified_t< T >>> = meta::enabler>
sol::basic_function< ref_t, aligned >::basic_function ( T &&  r)
inlinenoexcept

Definition at line 18982 of file sol.hpp.

template<typename ref_t, bool aligned = false>
sol::basic_function< ref_t, aligned >::basic_function ( const basic_function< ref_t, aligned > &  )
default
template<typename ref_t, bool aligned = false>
sol::basic_function< ref_t, aligned >::basic_function ( basic_function< ref_t, aligned > &&  )
default
template<typename ref_t, bool aligned = false>
sol::basic_function< ref_t, aligned >::basic_function ( const stack_reference r)
inline

Definition at line 18996 of file sol.hpp.

template<typename ref_t, bool aligned = false>
sol::basic_function< ref_t, aligned >::basic_function ( stack_reference &&  r)
inline

Definition at line 18999 of file sol.hpp.

template<typename ref_t, bool aligned = false>
sol::basic_function< ref_t, aligned >::basic_function ( lua_nil_t  n)
inline

Definition at line 19002 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<typename T , meta::enable< is_lua_reference< meta::unqualified_t< T >>> = meta::enabler>
sol::basic_function< ref_t, aligned >::basic_function ( lua_State L,
T &&  r 
)
inline

Definition at line 19006 of file sol.hpp.

template<typename ref_t, bool aligned = false>
sol::basic_function< ref_t, aligned >::basic_function ( lua_State L,
int  index = -1 
)
inline

Definition at line 19014 of file sol.hpp.

template<typename ref_t, bool aligned = false>
sol::basic_function< ref_t, aligned >::basic_function ( lua_State L,
ref_index  index 
)
inline

Definition at line 19021 of file sol.hpp.

Member Function Documentation

template<typename ref_t, bool aligned = false>
template<typename... Ret, typename... Args>
decltype(auto) sol::basic_function< ref_t, aligned >::call ( Args &&...  args) const
inline

Definition at line 19070 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<typename Fx >
int sol::basic_function< ref_t, aligned >::dump ( lua_Writer  writer,
void *  userdata,
bool  strip,
Fx &&  on_error 
) const
inline

Definition at line 19031 of file sol.hpp.

template<typename ref_t, bool aligned = false>
int sol::basic_function< ref_t, aligned >::dump ( lua_Writer  writer,
void *  userdata,
bool  strip = false 
) const
inline

Definition at line 19041 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<typename Container = bytecode>
Container sol::basic_function< ref_t, aligned >::dump ( ) const
inline

Definition at line 19046 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<typename Container = bytecode, typename Fx >
Container sol::basic_function< ref_t, aligned >::dump ( Fx &&  on_error) const
inline

Definition at line 19053 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<std::size_t... I, typename... Ret>
auto sol::basic_function< ref_t, aligned >::invoke ( types< Ret... >  ,
std::index_sequence< I... >  ,
std::ptrdiff_t  n 
) const
inlineprivate

Definition at line 18952 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<std::size_t I, typename Ret , meta::enable< meta::neg< std::is_void< Ret >>> = meta::enabler>
Ret sol::basic_function< ref_t, aligned >::invoke ( types< Ret >  ,
std::index_sequence< I >  ,
std::ptrdiff_t  n 
) const
inlineprivate

Definition at line 18958 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<std::size_t I>
void sol::basic_function< ref_t, aligned >::invoke ( types< void >  ,
std::index_sequence< I >  ,
std::ptrdiff_t  n 
) const
inlineprivate

Definition at line 18964 of file sol.hpp.

template<typename ref_t, bool aligned = false>
unsafe_function_result sol::basic_function< ref_t, aligned >::invoke ( types<>  ,
std::index_sequence<>  ,
std::ptrdiff_t  n 
) const
inlineprivate

Definition at line 18968 of file sol.hpp.

template<typename ref_t, bool aligned = false>
void sol::basic_function< ref_t, aligned >::luacall ( std::ptrdiff_t  argcount,
std::ptrdiff_t  resultcount 
) const
inlineprivate

Definition at line 18947 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<typename... Args>
unsafe_function_result sol::basic_function< ref_t, aligned >::operator() ( Args &&...  args) const
inline

Definition at line 19060 of file sol.hpp.

template<typename ref_t, bool aligned = false>
template<typename... Ret, typename... Args>
decltype(auto) sol::basic_function< ref_t, aligned >::operator() ( types< Ret... >  ,
Args &&...  args 
) const
inline

Definition at line 19065 of file sol.hpp.

template<typename ref_t, bool aligned = false>
basic_function& sol::basic_function< ref_t, aligned >::operator= ( const basic_function< ref_t, aligned > &  )
default
template<typename ref_t, bool aligned = false>
basic_function& sol::basic_function< ref_t, aligned >::operator= ( basic_function< ref_t, aligned > &&  )
default

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


plotjuggler
Author(s): Davide Faconti
autogenerated on Sun Dec 6 2020 04:02:52