Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
sol::u_detail::usertype_storage_base Struct Reference

#include <sol.hpp>

Inheritance diagram for sol::u_detail::usertype_storage_base:
Inheritance graph
[legend]

Public Member Functions

void add_entry (string_view sv, index_call_storage ics)
 
void change_indexing (lua_State *L, submetatable_type submetatable, void *derived_this, stack_reference &t, lua_CFunction index, lua_CFunction new_index, lua_CFunction meta_index, lua_CFunction meta_new_index)
 
void clear ()
 
template<typename Fx >
void for_each_table (lua_State *L, Fx &&fx)
 
template<typename T = void, typename Key , typename Value >
void set (lua_State *L, Key &&key, Value &&value)
 
template<typename T , typename... Bases>
void update_bases (lua_State *L, bases< Bases... >)
 
 usertype_storage_base (lua_State *L)
 

Static Public Member Functions

template<bool is_new_index, typename Base >
static void base_walk_index (lua_State *L, usertype_storage_base &self, bool &keep_going, int &base_result)
 
static int new_index_target_set (lua_State *L, void *target)
 
template<bool is_new_index = false, bool base_walking = false, bool from_named_metatable = false, typename... Bases>
static int self_index_call (types< Bases... >, lua_State *L, usertype_storage_base &self)
 

Public Attributes

std::unordered_map< reference, reference, reference_hash, reference_equalsauxiliary_keys
 
new_index_call_storage base_index
 
reference const_reference_index_table
 
reference const_value_index_table
 
reference gc_names_table
 
bool is_using_index
 
bool is_using_new_index
 
reference named_index_table
 
reference named_metatable
 
std::bitset< 64 > properties
 
reference reference_index_table
 
new_index_call_storage static_base_index
 
std::vector< std::unique_ptr< binding_base > > storage
 
std::unordered_map< string_view, index_call_storagestring_keys
 
std::vector< std::unique_ptr< char[]> > string_keys_storage
 
reference type_table
 
reference unique_index_table
 
reference value_index_table
 

Detailed Description

Definition at line 21968 of file sol.hpp.

Constructor & Destructor Documentation

sol::u_detail::usertype_storage_base::usertype_storage_base ( lua_State L)
inline

Definition at line 21989 of file sol.hpp.

Member Function Documentation

void sol::u_detail::usertype_storage_base::add_entry ( string_view  sv,
index_call_storage  ics 
)
inline

Definition at line 22045 of file sol.hpp.

template<bool is_new_index, typename Base >
static void sol::u_detail::usertype_storage_base::base_walk_index ( lua_State L,
usertype_storage_base self,
bool keep_going,
int &  base_result 
)
inlinestatic

Definition at line 22135 of file sol.hpp.

void sol::u_detail::usertype_storage_base::change_indexing ( lua_State L,
submetatable_type  submetatable,
void *  derived_this,
stack_reference t,
lua_CFunction  index,
lua_CFunction  new_index,
lua_CFunction  meta_index,
lua_CFunction  meta_new_index 
)
inline

Definition at line 22233 of file sol.hpp.

void sol::u_detail::usertype_storage_base::clear ( )
inline

Definition at line 22084 of file sol.hpp.

template<typename Fx >
void sol::u_detail::usertype_storage_base::for_each_table ( lua_State L,
Fx &&  fx 
)
inline

Definition at line 22016 of file sol.hpp.

static int sol::u_detail::usertype_storage_base::new_index_target_set ( lua_State L,
void *  target 
)
inlinestatic

Definition at line 22264 of file sol.hpp.

template<bool is_new_index = false, bool base_walking = false, bool from_named_metatable = false, typename... Bases>
static int sol::u_detail::usertype_storage_base::self_index_call ( types< Bases... >  ,
lua_State L,
usertype_storage_base self 
)
inlinestatic

Definition at line 22155 of file sol.hpp.

template<typename T , typename Key , typename Value >
void sol::u_detail::usertype_storage_base::set ( lua_State L,
Key &&  key,
Value &&  value 
)

Definition at line 22320 of file sol.hpp.

template<typename T , typename... Bases>
void sol::u_detail::usertype_storage_base::update_bases ( lua_State L,
bases< Bases... >   
)
inline

Definition at line 22054 of file sol.hpp.

Member Data Documentation

std::unordered_map<reference, reference, reference_hash, reference_equals> sol::u_detail::usertype_storage_base::auxiliary_keys

Definition at line 21973 of file sol.hpp.

new_index_call_storage sol::u_detail::usertype_storage_base::base_index

Definition at line 21983 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::const_reference_index_table

Definition at line 21977 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::const_value_index_table

Definition at line 21978 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::gc_names_table

Definition at line 21981 of file sol.hpp.

bool sol::u_detail::usertype_storage_base::is_using_index

Definition at line 21985 of file sol.hpp.

bool sol::u_detail::usertype_storage_base::is_using_new_index

Definition at line 21986 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::named_index_table

Definition at line 21979 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::named_metatable

Definition at line 21982 of file sol.hpp.

std::bitset<64> sol::u_detail::usertype_storage_base::properties

Definition at line 21987 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::reference_index_table

Definition at line 21975 of file sol.hpp.

new_index_call_storage sol::u_detail::usertype_storage_base::static_base_index

Definition at line 21984 of file sol.hpp.

std::vector<std::unique_ptr<binding_base> > sol::u_detail::usertype_storage_base::storage

Definition at line 21970 of file sol.hpp.

std::unordered_map<string_view, index_call_storage> sol::u_detail::usertype_storage_base::string_keys

Definition at line 21972 of file sol.hpp.

std::vector<std::unique_ptr<char[]> > sol::u_detail::usertype_storage_base::string_keys_storage

Definition at line 21971 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::type_table

Definition at line 21980 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::unique_index_table

Definition at line 21976 of file sol.hpp.

reference sol::u_detail::usertype_storage_base::value_index_table

Definition at line 21974 of file sol.hpp.


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


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