24 #ifndef LUABIND_CLASS_REP_HPP_INCLUDED 25 #define LUABIND_CLASS_REP_HPP_INCLUDED 27 #include <boost/limits.hpp> 33 #include <luabind/config.hpp> 34 #include <luabind/lua_include.hpp> 35 #include <luabind/detail/garbage_collector.hpp> 36 #include <luabind/detail/operator_id.hpp> 37 #include <luabind/detail/class_registry.hpp> 38 #include <luabind/error.hpp> 39 #include <luabind/handle.hpp> 40 #include <luabind/detail/primitives.hpp> 41 #include <luabind/typeid.hpp> 42 #include <luabind/detail/ref.hpp> 44 namespace luabind {
namespace detail
47 LUABIND_API std::string stack_content_by_name(
lua_State* L,
int start_index);
49 struct class_registration;
51 struct conversion_storage;
73 friend int lua_class_gettable(
lua_State*);
74 friend int lua_class_settable(
lua_State*);
75 friend int static_class_gettable(
lua_State*);
100 std::pair<void*,void*> allocate(
lua_State* L)
const;
103 static int constructor_dispatcher(
lua_State* L);
111 void add_base_class(
const base_info& binfo);
113 const std::vector<base_info>&
bases()
const throw() {
return m_bases; }
115 void set_type(
type_id const& t) { m_type = t; }
116 type_id const& type()
const throw() {
return m_type; }
118 const char* name()
const throw() {
return m_name; }
121 int metatable_ref()
const throw() {
return m_instance_metatable; }
123 void get_table(
lua_State* L)
const { m_table.push(L); }
124 void get_default_table(
lua_State* L)
const { m_default_table.push(L); }
126 class_type get_class_type()
const {
return m_class_type; }
128 void add_static_constant(
const char* name,
int val);
132 static int lua_settable_dispatcher(
lua_State* L);
136 static int static_class_gettable(
lua_State* L);
138 bool has_operator_in_lua(
lua_State*,
int id);
164 std::vector<base_info> m_bases;
187 class_type m_class_type;
192 int m_instance_metatable;
194 std::map<const char*, int, ltstr> m_static_constants;
199 int m_operator_cache;
205 bool is_class_rep(
lua_State* L,
int index);
211 #endif // LUABIND_CLASS_REP_HPP_INCLUDED
Definition: handle.hpp:33
Definition: class.hpp:170
Definition: typeid.hpp:22
Definition: inheritance.hpp:49
Definition: class_rep.hpp:105
Definition: minilua.c:461
Definition: PEtypes.h:507
Definition: inheritance.hpp:25
Definition: class_rep.hpp:68