Public Member Functions | Private Types | Private Member Functions | Friends | List of all members
sol::basic_usertype< T, base_type > Class Template Reference

#include <forward.hpp>

Public Member Functions

template<typename Key >
usertype_proxy< basic_usertype &, std::decay_t< Key > > operator[] (Key &&key)
 
template<typename Key >
usertype_proxy< const basic_usertype &, std::decay_t< Key > > operator[] (Key &&key) const
 
template<typename Key , typename Value >
basic_usertypeset (Key &&key, Value &&value)
 
template<typename Sig , typename Key , typename... Args>
basic_usertypeset_function (Key &&key, Args &&... args)
 
template<typename Key , typename... Args>
basic_usertypeset_function (Key &&key, Args &&... args)
 
void unregister ()
 

Private Types

using base_t = basic_metatable< base_type >
 
using table_base_t = basic_table< base_type >
 

Private Member Functions

template<typename R , typename... Args, typename Fx , typename Key , typename = std::invoke_result_t<Fx, Args...>>
void set_fx (types< R(Args...)>, Key &&key, Fx &&fx)
 
template<typename Fx , typename Key , meta::enable< meta::is_specialization_of< meta::unqualified_t< Fx >, overload_set >> = meta::enabler>
void set_fx (types<>, Key &&key, Fx &&fx)
 
template<typename Fx , typename Key , typename... Args, meta::disable< meta::is_specialization_of< meta::unqualified_t< Fx >, overload_set >> = meta::enabler>
void set_fx (types<>, Key &&key, Fx &&fx, Args &&... args)
 
template<typename... Sig, typename... Args, typename Key >
void set_resolved_function (Key &&key, Args &&... args)
 
template<std::size_t... I, typename... Args>
void tuple_set (std::index_sequence< I... >, std::tuple< Args... > &&args)
 

Friends

template<typename >
class basic_metatable
 
template<bool , typename >
class basic_table_core
 

Detailed Description

template<typename T, typename base_type>
class sol::basic_usertype< T, base_type >

Definition at line 1139 of file forward.hpp.

Member Typedef Documentation

◆ base_t

template<typename T , typename base_type >
using sol::basic_usertype< T, base_type >::base_t = basic_metatable<base_type>
private

Definition at line 26310 of file sol.hpp.

◆ table_base_t

template<typename T , typename base_type >
using sol::basic_usertype< T, base_type >::table_base_t = basic_table<base_type>
private

Definition at line 26311 of file sol.hpp.

Member Function Documentation

◆ operator[]() [1/2]

template<typename T , typename base_type >
template<typename Key >
usertype_proxy<basic_usertype&, std::decay_t<Key> > sol::basic_usertype< T, base_type >::operator[] ( Key &&  key)
inline

Definition at line 26391 of file sol.hpp.

◆ operator[]() [2/2]

template<typename T , typename base_type >
template<typename Key >
usertype_proxy<const basic_usertype&, std::decay_t<Key> > sol::basic_usertype< T, base_type >::operator[] ( Key &&  key) const
inline

Definition at line 26396 of file sol.hpp.

◆ set()

template<typename T , typename base_type >
template<typename Key , typename Value >
basic_usertype& sol::basic_usertype< T, base_type >::set ( Key &&  key,
Value &&  value 
)
inline

Definition at line 26358 of file sol.hpp.

◆ set_function() [1/2]

template<typename T , typename base_type >
template<typename Sig , typename Key , typename... Args>
basic_usertype& sol::basic_usertype< T, base_type >::set_function ( Key &&  key,
Args &&...  args 
)
inline

Definition at line 26379 of file sol.hpp.

◆ set_function() [2/2]

template<typename T , typename base_type >
template<typename Key , typename... Args>
basic_usertype& sol::basic_usertype< T, base_type >::set_function ( Key &&  key,
Args &&...  args 
)
inline

Definition at line 26385 of file sol.hpp.

◆ set_fx() [1/3]

template<typename T , typename base_type >
template<typename R , typename... Args, typename Fx , typename Key , typename = std::invoke_result_t<Fx, Args...>>
void sol::basic_usertype< T, base_type >::set_fx ( types< R(Args...)>  ,
Key &&  key,
Fx &&  fx 
)
inlineprivate

Definition at line 26326 of file sol.hpp.

◆ set_fx() [2/3]

template<typename T , typename base_type >
template<typename Fx , typename Key , meta::enable< meta::is_specialization_of< meta::unqualified_t< Fx >, overload_set >> = meta::enabler>
void sol::basic_usertype< T, base_type >::set_fx ( types<>  ,
Key &&  key,
Fx &&  fx 
)
inlineprivate

Definition at line 26331 of file sol.hpp.

◆ set_fx() [3/3]

template<typename T , typename base_type >
template<typename Fx , typename Key , typename... Args, meta::disable< meta::is_specialization_of< meta::unqualified_t< Fx >, overload_set >> = meta::enabler>
void sol::basic_usertype< T, base_type >::set_fx ( types<>  ,
Key &&  key,
Fx &&  fx,
Args &&...  args 
)
inlineprivate

Definition at line 26337 of file sol.hpp.

◆ set_resolved_function()

template<typename T , typename base_type >
template<typename... Sig, typename... Args, typename Key >
void sol::basic_usertype< T, base_type >::set_resolved_function ( Key &&  key,
Args &&...  args 
)
inlineprivate

Definition at line 26342 of file sol.hpp.

◆ tuple_set()

template<typename T , typename base_type >
template<std::size_t... I, typename... Args>
void sol::basic_usertype< T, base_type >::tuple_set ( std::index_sequence< I... >  ,
std::tuple< Args... > &&  args 
)
inlineprivate

Definition at line 26320 of file sol.hpp.

◆ unregister()

template<typename T , typename base_type >
void sol::basic_metatable< base_type >::unregister
inline

Definition at line 26238 of file sol.hpp.

Friends And Related Function Documentation

◆ basic_metatable

template<typename T , typename base_type >
template<typename >
friend class basic_metatable
friend

Definition at line 26314 of file sol.hpp.

◆ basic_table_core

template<typename T , typename base_type >
template<bool , typename >
friend class basic_table_core
friend

Definition at line 26317 of file sol.hpp.


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


plotjuggler
Author(s): Davide Faconti
autogenerated on Mon Nov 11 2024 03:23:53