Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Friends | List of all members
sol::basic_table_core< top_level, ref_t > Class Template Reference

#include <forward.hpp>

Public Types

using const_iterator = iterator
 
using iterator = basic_table_iterator< ref_t >
 

Public Member Functions

template<typename... Args>
basic_table_coreadd (Args &&... args)
 
 basic_table_core () noexcept=default
 
 basic_table_core (basic_table_core &&)=default
 
 basic_table_core (const basic_table_core &)=default
 
 basic_table_core (const stack_reference &r)
 
 basic_table_core (lua_nil_t r) noexcept
 
 basic_table_core (lua_State *L, const new_table &nt)
 
 basic_table_core (lua_State *L, global_tag_t t) noexcept
 
 basic_table_core (lua_State *L, int index=-1)
 
 basic_table_core (lua_State *L, ref_index index)
 
template<typename T , meta::enable_any< is_lua_reference< meta::unqualified_t< T >>> = meta::enabler>
 basic_table_core (lua_State *L, T &&r)
 
 basic_table_core (stack_reference &&r)
 
template<typename T , meta::enable< meta::neg< meta::any_same< meta::unqualified_t< T >, basic_table_core >>, meta::neg< std::is_same< ref_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_table_core (T &&r) noexcept
 
iterator begin () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
void clear ()
 
template<typename Key , typename Value , typename... Args>
table create (int narr, int nrec, Key &&key, Value &&value, Args &&... args)
 
table create (int narr=0, int nrec=0)
 
template<typename Name , typename Key , typename Value , typename... Args>
table create (Name &&name, int narr, int nrec, Key &&key, Value &&value, Args &&... args)
 
template<typename Name >
table create (Name &&name, int narr=0, int nrec=0)
 
template<typename Name , typename... Args>
table create_named (Name &&name, Args &&... args)
 
template<typename... Args>
table create_with (Args &&... args)
 
bool empty () const
 
iterator end () const
 
template<typename Key = object, typename Value = object, typename Fx >
void for_each (Fx &&fx) const
 
template<typename... Ret, typename... Keys>
decltype(auto) get (Keys &&... keys) const
 
template<typename T , typename Key , typename D >
decltype(auto) get_or (Key &&key, D &&otherwise) const
 
template<typename T , typename Key >
decltype(auto) get_or (Key &&key, T &&otherwise) const
 
template<bool read_only = true, typename... Args>
table new_enum (const string_view &name, Args &&... args)
 
template<typename T , bool read_only = true>
table new_enum (const string_view &name, std::initializer_list< std::pair< string_view, T >> items)
 
template<typename Class , typename Key >
usertype< Class > new_usertype (Key &&key)
 
template<typename Class , typename Key , typename Arg , typename... Args, typename = std::enable_if_t<!std::is_base_of_v<automagic_enrollments, meta::unqualified_t<Arg>>>>
usertype< Class > new_usertype (Key &&key, Arg &&arg, Args &&... args)
 
template<typename Class , typename Key >
usertype< Class > new_usertype (Key &&key, automagic_enrollments enrollment)
 
template<typename Class , typename Key , automagic_flags enrollment_flags>
usertype< Class > new_usertype (Key &&key, constant_automagic_enrollments< enrollment_flags > enrollment)
 
basic_table_coreoperator= (basic_table_core &&)=default
 
basic_table_coreoperator= (const basic_table_core &)=default
 
template<typename T >
auto operator[] (T &&key) &
 
template<typename T >
auto operator[] (T &&key) &&
 
template<typename T >
auto operator[] (T &&key) const &
 
basic_pairs_range< const basic_table_corepairs () const noexcept
 
basic_pairs_range< basic_table_corepairs () noexcept
 
template<typename... Ret, typename... Keys>
decltype(auto) raw_get (Keys &&... keys) const
 
template<typename T , typename Key , typename D >
decltype(auto) raw_get_or (Key &&key, D &&otherwise) const
 
template<typename T , typename Key >
decltype(auto) raw_get_or (Key &&key, T &&otherwise) const
 
template<typename... Args>
basic_table_coreraw_set (Args &&... args)
 
template<typename... Args>
basic_table_coreset (Args &&... args)
 
template<typename Sig , typename Key , typename... Args>
basic_table_coreset_function (Key &&key, Args &&... args)
 
template<typename Key , typename... Args>
basic_table_coreset_function (Key &&key, Args &&... args)
 
size_t size () const
 
template<typename T , typename... Keys>
decltype(auto) traverse_get (Keys &&... keys) const
 
template<typename T , typename... Keys>
decltype(auto) traverse_raw_get (Keys &&... keys) const
 
template<typename... Keys>
basic_table_coretraverse_raw_set (Keys &&... keys)
 
template<typename... Keys>
basic_table_coretraverse_set (Keys &&... keys)
 

Static Public Member Functions

template<typename Key , typename Value , typename... Args>
static table create (lua_State *L, int narr, int nrec, Key &&key, Value &&value, Args &&... args)
 
static table create (lua_State *L, int narr=0, int nrec=0)
 
template<typename... Args>
static table create_with (lua_State *L, Args &&... args)
 

Protected Member Functions

 basic_table_core (detail::no_safety_tag, lua_nil_t n)
 
 basic_table_core (detail::no_safety_tag, lua_State *L, int index)
 
 basic_table_core (detail::no_safety_tag, lua_State *L, ref_index index)
 
template<typename T , meta::enable< is_lua_reference< meta::unqualified_t< T >>> = meta::enabler>
 basic_table_core (detail::no_safety_tag, lua_State *L, T &&r) noexcept
 
template<typename T , meta::enable< meta::neg< meta::any_same< meta::unqualified_t< T >, basic_table_core >>, meta::neg< std::is_same< ref_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_table_core (detail::no_safety_tag, T &&r) noexcept
 

Private Types

using base_t = basic_object< ref_t >
 
template<typename T >
using is_get_direct_tableless = meta::boolean< stack::stack_detail::is_get_direct_tableless_v< T, top_level, false > >
 
template<typename T >
using is_raw_get_direct_tableless = std::false_type
 
template<typename T >
using is_raw_set_direct_tableless = std::false_type
 
template<typename T >
using is_set_direct_tableless = meta::boolean< stack::stack_detail::is_set_direct_tableless_v< T, top_level, false > >
 

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<bool global, bool raw, detail::insert_mode mode, typename T , typename Key , typename... Keys>
decltype(auto) traverse_get_deep (int table_index, Key &&key, Keys &&... keys) const
 
template<bool global, bool raw, detail::insert_mode mode, typename T , typename Key , typename... Keys>
decltype(auto) traverse_get_deep_optional (int &popcount, int table_index, Key &&key, Keys &&... keys) const
 
template<bool raw, typename Ret , typename... Keys>
decltype(auto) traverse_get_single (int table_index, Keys &&... keys) const
 
template<bool raw, typename Ret , typename Key >
decltype(auto) traverse_get_single_maybe_tuple (int table_index, Key &&key) const
 
template<bool raw, typename Ret , size_t... I, typename Key >
decltype(auto) traverse_get_single_tuple (int table_index, std::index_sequence< I... >, Key &&key) const
 
template<bool global, bool raw, detail::insert_mode mode, typename Key , typename... Keys>
void traverse_set_deep (int table_index, Key &&key, Keys &&... keys) const
 
template<bool raw, typename... Ret, typename... Keys>
decltype(auto) tuple_get (int table_index, Keys &&... keys) const
 
template<bool raw, typename Pairs , std::size_t... I>
void tuple_set (std::index_sequence< I... >, Pairs &&pairs)
 

Friends

template<typename >
class basic_metatable
 
template<typename , typename >
class basic_usertype
 
class state
 
class state_view
 

Detailed Description

template<bool top_level, typename ref_t>
class sol::basic_table_core< top_level, ref_t >

Definition at line 1117 of file forward.hpp.

Member Typedef Documentation

◆ base_t

template<bool top_level, typename ref_t >
using sol::basic_table_core< top_level, ref_t >::base_t = basic_object<ref_t>
private

Definition at line 25464 of file sol.hpp.

◆ const_iterator

template<bool top_level, typename ref_t >
using sol::basic_table_core< top_level, ref_t >::const_iterator = iterator

Definition at line 25710 of file sol.hpp.

◆ is_get_direct_tableless

template<bool top_level, typename ref_t >
template<typename T >
using sol::basic_table_core< top_level, ref_t >::is_get_direct_tableless = meta::boolean<stack::stack_detail::is_get_direct_tableless_v<T, top_level, false> >
private

Definition at line 25474 of file sol.hpp.

◆ is_raw_get_direct_tableless

template<bool top_level, typename ref_t >
template<typename T >
using sol::basic_table_core< top_level, ref_t >::is_raw_get_direct_tableless = std::false_type
private

Definition at line 25477 of file sol.hpp.

◆ is_raw_set_direct_tableless

template<bool top_level, typename ref_t >
template<typename T >
using sol::basic_table_core< top_level, ref_t >::is_raw_set_direct_tableless = std::false_type
private

Definition at line 25483 of file sol.hpp.

◆ is_set_direct_tableless

template<bool top_level, typename ref_t >
template<typename T >
using sol::basic_table_core< top_level, ref_t >::is_set_direct_tableless = meta::boolean<stack::stack_detail::is_set_direct_tableless_v<T, top_level, false> >
private

Definition at line 25480 of file sol.hpp.

◆ iterator

template<bool top_level, typename ref_t >
using sol::basic_table_core< top_level, ref_t >::iterator = basic_table_iterator<ref_t>

Definition at line 25709 of file sol.hpp.

Constructor & Destructor Documentation

◆ basic_table_core() [1/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( detail::no_safety_tag  ,
lua_nil_t  n 
)
inlineprotected

Definition at line 25693 of file sol.hpp.

◆ basic_table_core() [2/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( detail::no_safety_tag  ,
lua_State L,
int  index 
)
inlineprotected

Definition at line 25695 of file sol.hpp.

◆ basic_table_core() [3/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( detail::no_safety_tag  ,
lua_State L,
ref_index  index 
)
inlineprotected

Definition at line 25697 of file sol.hpp.

◆ basic_table_core() [4/17]

template<bool top_level, typename ref_t >
template<typename T , meta::enable< meta::neg< meta::any_same< meta::unqualified_t< T >, basic_table_core >>, meta::neg< std::is_same< ref_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_table_core< top_level, ref_t >::basic_table_core ( detail::no_safety_tag  ,
T &&  r 
)
inlineprotectednoexcept

Definition at line 25702 of file sol.hpp.

◆ basic_table_core() [5/17]

template<bool top_level, typename ref_t >
template<typename T , meta::enable< is_lua_reference< meta::unqualified_t< T >>> = meta::enabler>
sol::basic_table_core< top_level, ref_t >::basic_table_core ( detail::no_safety_tag  ,
lua_State L,
T &&  r 
)
inlineprotectednoexcept

Definition at line 25705 of file sol.hpp.

◆ basic_table_core() [6/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( )
defaultnoexcept

◆ basic_table_core() [7/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( const basic_table_core< top_level, ref_t > &  )
default

◆ basic_table_core() [8/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( basic_table_core< top_level, ref_t > &&  )
default

◆ basic_table_core() [9/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( const stack_reference r)
inline

Definition at line 25720 of file sol.hpp.

◆ basic_table_core() [10/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( stack_reference &&  r)
inline

Definition at line 25723 of file sol.hpp.

◆ basic_table_core() [11/17]

template<bool top_level, typename ref_t >
template<typename T , meta::enable_any< is_lua_reference< meta::unqualified_t< T >>> = meta::enabler>
sol::basic_table_core< top_level, ref_t >::basic_table_core ( lua_State L,
T &&  r 
)
inline

Definition at line 25727 of file sol.hpp.

◆ basic_table_core() [12/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( lua_State L,
const new_table nt 
)
inline

Definition at line 25736 of file sol.hpp.

◆ basic_table_core() [13/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( lua_State L,
int  index = -1 
)
inline

Definition at line 25742 of file sol.hpp.

◆ basic_table_core() [14/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( lua_State L,
ref_index  index 
)
inline

Definition at line 25749 of file sol.hpp.

◆ basic_table_core() [15/17]

template<bool top_level, typename ref_t >
template<typename T , meta::enable< meta::neg< meta::any_same< meta::unqualified_t< T >, basic_table_core >>, meta::neg< std::is_same< ref_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_table_core< top_level, ref_t >::basic_table_core ( T &&  r)
inlinenoexcept

Definition at line 25761 of file sol.hpp.

◆ basic_table_core() [16/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( lua_nil_t  r)
inlinenoexcept

Definition at line 25772 of file sol.hpp.

◆ basic_table_core() [17/17]

template<bool top_level, typename ref_t >
sol::basic_table_core< top_level, ref_t >::basic_table_core ( lua_State L,
global_tag_t  t 
)
inlinenoexcept

Definition at line 25775 of file sol.hpp.

Member Function Documentation

◆ add()

template<bool top_level, typename ref_t >
template<typename... Args>
basic_table_core& sol::basic_table_core< top_level, ref_t >::add ( Args &&...  args)
inline

Definition at line 26038 of file sol.hpp.

◆ begin()

template<bool top_level, typename ref_t >
iterator sol::basic_table_core< top_level, ref_t >::begin ( ) const
inline

Definition at line 25778 of file sol.hpp.

◆ cbegin()

template<bool top_level, typename ref_t >
const_iterator sol::basic_table_core< top_level, ref_t >::cbegin ( ) const
inline

Definition at line 25789 of file sol.hpp.

◆ cend()

template<bool top_level, typename ref_t >
const_iterator sol::basic_table_core< top_level, ref_t >::cend ( ) const
inline

Definition at line 25793 of file sol.hpp.

◆ clear()

template<bool top_level, typename ref_t >
void sol::basic_table_core< top_level, ref_t >::clear ( )
inline

Definition at line 25805 of file sol.hpp.

◆ create() [1/6]

template<bool top_level, typename ref_t >
template<typename Key , typename Value , typename... Args>
table sol::basic_table_core< top_level, ref_t >::create ( int  narr,
int  nrec,
Key &&  key,
Value &&  value,
Args &&...  args 
)
inline

Definition at line 26097 of file sol.hpp.

◆ create() [2/6]

template<bool top_level, typename ref_t >
table sol::basic_table_core< top_level, ref_t >::create ( int  narr = 0,
int  nrec = 0 
)
inline

Definition at line 26092 of file sol.hpp.

◆ create() [3/6]

template<bool top_level, typename ref_t >
template<typename Key , typename Value , typename... Args>
static table sol::basic_table_core< top_level, ref_t >::create ( lua_State L,
int  narr,
int  nrec,
Key &&  key,
Value &&  value,
Args &&...  args 
)
inlinestatic

Definition at line 26077 of file sol.hpp.

◆ create() [4/6]

template<bool top_level, typename ref_t >
static table sol::basic_table_core< top_level, ref_t >::create ( lua_State L,
int  narr = 0,
int  nrec = 0 
)
inlinestatic

Definition at line 26069 of file sol.hpp.

◆ create() [5/6]

template<bool top_level, typename ref_t >
template<typename Name , typename Key , typename Value , typename... Args>
table sol::basic_table_core< top_level, ref_t >::create ( Name &&  name,
int  narr,
int  nrec,
Key &&  key,
Value &&  value,
Args &&...  args 
)
inline

Definition at line 26109 of file sol.hpp.

◆ create() [6/6]

template<bool top_level, typename ref_t >
template<typename Name >
table sol::basic_table_core< top_level, ref_t >::create ( Name &&  name,
int  narr = 0,
int  nrec = 0 
)
inline

Definition at line 26102 of file sol.hpp.

◆ create_named()

template<bool top_level, typename ref_t >
template<typename Name , typename... Args>
table sol::basic_table_core< top_level, ref_t >::create_named ( Name &&  name,
Args &&...  args 
)
inline

Definition at line 26121 of file sol.hpp.

◆ create_with() [1/2]

template<bool top_level, typename ref_t >
template<typename... Args>
table sol::basic_table_core< top_level, ref_t >::create_with ( Args &&...  args)
inline

Definition at line 26116 of file sol.hpp.

◆ create_with() [2/2]

template<bool top_level, typename ref_t >
template<typename... Args>
static table sol::basic_table_core< top_level, ref_t >::create_with ( lua_State L,
Args &&...  args 
)
inlinestatic

Definition at line 26086 of file sol.hpp.

◆ empty()

template<bool top_level, typename ref_t >
bool sol::basic_table_core< top_level, ref_t >::empty ( ) const
inline

Definition at line 26006 of file sol.hpp.

◆ end()

template<bool top_level, typename ref_t >
iterator sol::basic_table_core< top_level, ref_t >::end ( ) const
inline

Definition at line 25785 of file sol.hpp.

◆ for_each()

template<bool top_level, typename ref_t >
template<typename Key = object, typename Value = object, typename Fx >
void sol::basic_table_core< top_level, ref_t >::for_each ( Fx &&  fx) const
inline

Definition at line 25971 of file sol.hpp.

◆ get()

template<bool top_level, typename ref_t >
template<typename... Ret, typename... Keys>
decltype(auto) sol::basic_table_core< top_level, ref_t >::get ( Keys &&...  keys) const
inline

Definition at line 25812 of file sol.hpp.

◆ get_or() [1/2]

template<bool top_level, typename ref_t >
template<typename T , typename Key , typename D >
decltype(auto) sol::basic_table_core< top_level, ref_t >::get_or ( Key &&  key,
D &&  otherwise 
) const
inline

Definition at line 25831 of file sol.hpp.

◆ get_or() [2/2]

template<bool top_level, typename ref_t >
template<typename T , typename Key >
decltype(auto) sol::basic_table_core< top_level, ref_t >::get_or ( Key &&  key,
T &&  otherwise 
) const
inline

Definition at line 25821 of file sol.hpp.

◆ new_enum() [1/2]

template<bool top_level, typename ref_t >
template<bool read_only = true, typename... Args>
table sol::basic_table_core< top_level, ref_t >::new_enum ( const string_view name,
Args &&...  args 
)
inline

Definition at line 25938 of file sol.hpp.

◆ new_enum() [2/2]

template<bool top_level, typename ref_t >
template<typename T , bool read_only = true>
table sol::basic_table_core< top_level, ref_t >::new_enum ( const string_view name,
std::initializer_list< std::pair< string_view, T >>  items 
)
inline

Definition at line 25954 of file sol.hpp.

◆ new_usertype() [1/4]

template<bool is_global, typename base_type >
template<typename Class , typename Key >
usertype< Class > sol::basic_table_core< is_global, base_type >::new_usertype ( Key &&  key)

Definition at line 26482 of file sol.hpp.

◆ new_usertype() [2/4]

template<bool is_global, typename base_type >
template<typename Class , typename Key , typename Arg , typename... Args, typename >
usertype< Class > sol::basic_table_core< is_global, base_type >::new_usertype ( Key &&  key,
Arg &&  arg,
Args &&...  args 
)

Definition at line 26509 of file sol.hpp.

◆ new_usertype() [3/4]

template<bool is_global, typename base_type >
template<typename Class , typename Key >
usertype< Class > sol::basic_table_core< is_global, base_type >::new_usertype ( Key &&  key,
automagic_enrollments  enrollment 
)

Definition at line 26499 of file sol.hpp.

◆ new_usertype() [4/4]

template<bool is_global, typename base_type >
template<typename Class , typename Key , automagic_flags enrollment_flags>
usertype< Class > sol::basic_table_core< is_global, base_type >::new_usertype ( Key &&  key,
constant_automagic_enrollments< enrollment_flags >  enrollment 
)

Definition at line 26489 of file sol.hpp.

◆ operator=() [1/2]

template<bool top_level, typename ref_t >
basic_table_core& sol::basic_table_core< top_level, ref_t >::operator= ( basic_table_core< top_level, ref_t > &&  )
default

◆ operator=() [2/2]

template<bool top_level, typename ref_t >
basic_table_core& sol::basic_table_core< top_level, ref_t >::operator= ( const basic_table_core< top_level, ref_t > &  )
default

◆ operator[]() [1/3]

template<bool top_level, typename ref_t >
template<typename T >
auto sol::basic_table_core< top_level, ref_t >::operator[] ( T &&  key) &
inline

Definition at line 26011 of file sol.hpp.

◆ operator[]() [2/3]

template<bool top_level, typename ref_t >
template<typename T >
auto sol::basic_table_core< top_level, ref_t >::operator[] ( T &&  key) &&
inline

Definition at line 26021 of file sol.hpp.

◆ operator[]() [3/3]

template<bool top_level, typename ref_t >
template<typename T >
auto sol::basic_table_core< top_level, ref_t >::operator[] ( T &&  key) const &
inline

Definition at line 26016 of file sol.hpp.

◆ pairs() [1/2]

template<bool top_level, typename ref_t >
basic_pairs_range<const basic_table_core> sol::basic_table_core< top_level, ref_t >::pairs ( ) const
inlinenoexcept

Definition at line 25801 of file sol.hpp.

◆ pairs() [2/2]

template<bool top_level, typename ref_t >
basic_pairs_range<basic_table_core> sol::basic_table_core< top_level, ref_t >::pairs ( )
inlinenoexcept

Definition at line 25797 of file sol.hpp.

◆ raw_get()

template<bool top_level, typename ref_t >
template<typename... Ret, typename... Keys>
decltype(auto) sol::basic_table_core< top_level, ref_t >::raw_get ( Keys &&...  keys) const
inline

Definition at line 25873 of file sol.hpp.

◆ raw_get_or() [1/2]

template<bool top_level, typename ref_t >
template<typename T , typename Key , typename D >
decltype(auto) sol::basic_table_core< top_level, ref_t >::raw_get_or ( Key &&  key,
D &&  otherwise 
) const
inline

Definition at line 25892 of file sol.hpp.

◆ raw_get_or() [2/2]

template<bool top_level, typename ref_t >
template<typename T , typename Key >
decltype(auto) sol::basic_table_core< top_level, ref_t >::raw_get_or ( Key &&  key,
T &&  otherwise 
) const
inline

Definition at line 25882 of file sol.hpp.

◆ raw_set()

template<bool top_level, typename ref_t >
template<typename... Args>
basic_table_core& sol::basic_table_core< top_level, ref_t >::raw_set ( Args &&...  args)
inline

Definition at line 25919 of file sol.hpp.

◆ set()

template<bool top_level, typename ref_t >
template<typename... Args>
basic_table_core& sol::basic_table_core< top_level, ref_t >::set ( Args &&...  args)
inline

Definition at line 25862 of file sol.hpp.

◆ set_function() [1/2]

template<bool top_level, typename ref_t >
template<typename Sig , typename Key , typename... Args>
basic_table_core& sol::basic_table_core< top_level, ref_t >::set_function ( Key &&  key,
Args &&...  args 
)
inline

Definition at line 26026 of file sol.hpp.

◆ set_function() [2/2]

template<bool top_level, typename ref_t >
template<typename Key , typename... Args>
basic_table_core& sol::basic_table_core< top_level, ref_t >::set_function ( Key &&  key,
Args &&...  args 
)
inline

Definition at line 26032 of file sol.hpp.

◆ set_fx() [1/3]

template<bool top_level, typename ref_t >
template<typename R , typename... Args, typename Fx , typename Key , typename = std::invoke_result_t<Fx, Args...>>
void sol::basic_table_core< top_level, ref_t >::set_fx ( types< R(Args...)>  ,
Key &&  key,
Fx &&  fx 
)
inlineprivate

Definition at line 26048 of file sol.hpp.

◆ set_fx() [2/3]

template<bool top_level, typename ref_t >
template<typename Fx , typename Key , meta::enable< meta::is_specialization_of< meta::unqualified_t< Fx >, overload_set >> = meta::enabler>
void sol::basic_table_core< top_level, ref_t >::set_fx ( types<>  ,
Key &&  key,
Fx &&  fx 
)
inlineprivate

Definition at line 26053 of file sol.hpp.

◆ set_fx() [3/3]

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

Definition at line 26059 of file sol.hpp.

◆ set_resolved_function()

template<bool top_level, typename ref_t >
template<typename... Sig, typename... Args, typename Key >
void sol::basic_table_core< top_level, ref_t >::set_resolved_function ( Key &&  key,
Args &&...  args 
)
inlineprivate

Definition at line 26064 of file sol.hpp.

◆ size()

template<bool top_level, typename ref_t >
size_t sol::basic_table_core< top_level, ref_t >::size ( ) const
inline

Definition at line 25998 of file sol.hpp.

◆ traverse_get()

template<bool top_level, typename ref_t >
template<typename T , typename... Keys>
decltype(auto) sol::basic_table_core< top_level, ref_t >::traverse_get ( Keys &&...  keys) const
inline

Definition at line 25840 of file sol.hpp.

◆ traverse_get_deep()

template<bool top_level, typename ref_t >
template<bool global, bool raw, detail::insert_mode mode, typename T , typename Key , typename... Keys>
decltype(auto) sol::basic_table_core< top_level, ref_t >::traverse_get_deep ( int  table_index,
Key &&  key,
Keys &&...  keys 
) const
inlineprivate

Definition at line 25541 of file sol.hpp.

◆ traverse_get_deep_optional()

template<bool top_level, typename ref_t >
template<bool global, bool raw, detail::insert_mode mode, typename T , typename Key , typename... Keys>
decltype(auto) sol::basic_table_core< top_level, ref_t >::traverse_get_deep_optional ( int &  popcount,
int  table_index,
Key &&  key,
Keys &&...  keys 
) const
inlineprivate

Definition at line 25574 of file sol.hpp.

◆ traverse_get_single()

template<bool top_level, typename ref_t >
template<bool raw, typename Ret , typename... Keys>
decltype(auto) sol::basic_table_core< top_level, ref_t >::traverse_get_single ( int  table_index,
Keys &&...  keys 
) const
inlineprivate

Definition at line 25513 of file sol.hpp.

◆ traverse_get_single_maybe_tuple()

template<bool top_level, typename ref_t >
template<bool raw, typename Ret , typename Key >
decltype(auto) sol::basic_table_core< top_level, ref_t >::traverse_get_single_maybe_tuple ( int  table_index,
Key &&  key 
) const
inlineprivate

Definition at line 25502 of file sol.hpp.

◆ traverse_get_single_tuple()

template<bool top_level, typename ref_t >
template<bool raw, typename Ret , size_t... I, typename Key >
decltype(auto) sol::basic_table_core< top_level, ref_t >::traverse_get_single_tuple ( int  table_index,
std::index_sequence< I... >  ,
Key &&  key 
) const
inlineprivate

Definition at line 25497 of file sol.hpp.

◆ traverse_raw_get()

template<bool top_level, typename ref_t >
template<typename T , typename... Keys>
decltype(auto) sol::basic_table_core< top_level, ref_t >::traverse_raw_get ( Keys &&...  keys) const
inline

Definition at line 25901 of file sol.hpp.

◆ traverse_raw_set()

template<bool top_level, typename ref_t >
template<typename... Keys>
basic_table_core& sol::basic_table_core< top_level, ref_t >::traverse_raw_set ( Keys &&...  keys)
inline

Definition at line 25909 of file sol.hpp.

◆ traverse_set()

template<bool top_level, typename ref_t >
template<typename... Keys>
basic_table_core& sol::basic_table_core< top_level, ref_t >::traverse_set ( Keys &&...  keys)
inline

Definition at line 25849 of file sol.hpp.

◆ traverse_set_deep()

template<bool top_level, typename ref_t >
template<bool global, bool raw, detail::insert_mode mode, typename Key , typename... Keys>
void sol::basic_table_core< top_level, ref_t >::traverse_set_deep ( int  table_index,
Key &&  key,
Keys &&...  keys 
) const
inlineprivate

Definition at line 25631 of file sol.hpp.

◆ tuple_get()

template<bool top_level, typename ref_t >
template<bool raw, typename... Ret, typename... Keys>
decltype(auto) sol::basic_table_core< top_level, ref_t >::tuple_get ( int  table_index,
Keys &&...  keys 
) const
inlineprivate

Definition at line 25486 of file sol.hpp.

◆ tuple_set()

template<bool top_level, typename ref_t >
template<bool raw, typename Pairs , std::size_t... I>
void sol::basic_table_core< top_level, ref_t >::tuple_set ( std::index_sequence< I... >  ,
Pairs &&  pairs 
)
inlineprivate

Definition at line 25527 of file sol.hpp.

Friends And Related Function Documentation

◆ basic_metatable

template<bool top_level, typename ref_t >
template<typename >
friend class basic_metatable
friend

Definition at line 25471 of file sol.hpp.

◆ basic_usertype

template<bool top_level, typename ref_t >
template<typename , typename >
friend class basic_usertype
friend

Definition at line 25469 of file sol.hpp.

◆ state

template<bool top_level, typename ref_t >
friend class state
friend

Definition at line 25466 of file sol.hpp.

◆ state_view

template<bool top_level, typename ref_t >
friend class state_view
friend

Definition at line 25467 of file sol.hpp.


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


plotjuggler
Author(s): Davide Faconti
autogenerated on Sun Aug 11 2024 02:24:31