Pioneer
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
LuaMetaTypeBase Class Reference

#include <LuaMetaType.h>

Inheritance diagram for LuaMetaTypeBase:
Inheritance graph
[legend]

Public Member Functions

 LuaMetaTypeBase (const char *name)
 
void CreateMetaType (lua_State *l)
 
const char * GetTypeName () const
 
const char * GetParent () const
 
void SetParent (const char *parent)
 
void GetMetatable () const
 
bool IsValid () const
 
void StartRecording ()
 
void StopRecording ()
 

Static Public Member Functions

static void GetNames (std::vector< std::string > &names, const std::string &prefix="", bool methodsOnly=false)
 
static bool GetMetatableFromName (lua_State *l, const char *name)
 
static void * TestUserdata (lua_State *l, int index, const char *name)
 
static void * CheckUserdata (lua_State *l, int index, const char *name)
 

Protected Types

template<typename Rt , typename... Args>
using free_function = Rt(*)(Args...)
 
template<typename T , typename Dt >
using member_pointer = Dt T::*
 
template<typename T >
using member_cfunction = int(*)(lua_State *, T *)
 
template<typename T , typename Rt , typename... Args>
using member_function = Rt(T::*)(Args...)
 
template<typename T , typename Rt , typename... Args>
using const_member_function = Rt(T::*)(Args...) const
 

Protected Member Functions

void GetAttrTable (lua_State *L, int index)
 
void GetMethodTable (lua_State *L, int index)
 

Static Protected Member Functions

template<typename Rt , typename... Args>
static std::enable_if<!std::is_same< Rt, void >::value, int >::type free_fn_wrapper_ (lua_State *L)
 
template<typename Rt , typename... Args>
static std::enable_if< std::is_same< Rt, void >::value, int >::type free_fn_wrapper_ (lua_State *L)
 
template<typename T , typename Dt >
static int member_wrapper_ (lua_State *L)
 
template<typename T >
static int member_cfn_wrapper_ (lua_State *L)
 
template<typename T >
static int getter_member_cfn_wrapper_ (lua_State *L)
 
template<typename T , typename Rt , typename... Args>
static std::enable_if<!std::is_same< Rt, void >::value, int >::type member_fn_wrapper_ (lua_State *L)
 
template<typename T , typename Rt , typename... Args>
static std::enable_if< std::is_same< Rt, void >::value, int >::type member_fn_wrapper_ (lua_State *L)
 
template<typename T , typename Dt , typename Dt2 >
static int getter_member_fn_wrapper_ (lua_State *L)
 
template<typename MemT >
static void PushPointerToMember (lua_State *L, MemT obj)
 
template<typename MemT >
static MemT & PullPointerToMember (lua_State *L, int idx)
 
template<typename T >
static void PushFreeFunction (lua_State *L, T obj)
 
template<typename T >
static T PullFreeFunction (lua_State *L, int index)
 

Protected Attributes

std::string m_typeName
 
std::string m_parent
 
lua_State * m_lua
 
int m_ref = LUA_NOREF
 
int m_index = 0
 

Member Typedef Documentation

◆ const_member_function

template<typename T , typename Rt , typename... Args>
using LuaMetaTypeBase::const_member_function = Rt (T::*)(Args...) const
protected

◆ free_function

template<typename Rt , typename... Args>
using LuaMetaTypeBase::free_function = Rt (*)(Args...)
protected

◆ member_cfunction

template<typename T >
using LuaMetaTypeBase::member_cfunction = int (*)(lua_State *, T *)
protected

◆ member_function

template<typename T , typename Rt , typename... Args>
using LuaMetaTypeBase::member_function = Rt (T::*)(Args...)
protected

◆ member_pointer

template<typename T , typename Dt >
using LuaMetaTypeBase::member_pointer = Dt T::*
protected

Constructor & Destructor Documentation

◆ LuaMetaTypeBase()

LuaMetaTypeBase::LuaMetaTypeBase ( const char *  name)
inline

Member Function Documentation

◆ CheckUserdata()

void * LuaMetaTypeBase::CheckUserdata ( lua_State *  l,
int  index,
const char *  name 
)
static
Here is the call graph for this function:

◆ CreateMetaType()

void LuaMetaTypeBase::CreateMetaType ( lua_State *  l)
Here is the call graph for this function:

◆ free_fn_wrapper_() [1/2]

template<typename Rt , typename... Args>
static std::enable_if<!std::is_same< Rt, void >::value, int >::type LuaMetaTypeBase::free_fn_wrapper_ ( lua_State *  L)
inlinestaticprotected
Here is the call graph for this function:

◆ free_fn_wrapper_() [2/2]

template<typename Rt , typename... Args>
static std::enable_if< std::is_same< Rt, void >::value, int >::type LuaMetaTypeBase::free_fn_wrapper_ ( lua_State *  L)
inlinestaticprotected
Here is the call graph for this function:

◆ GetAttrTable()

void LuaMetaTypeBase::GetAttrTable ( lua_State *  L,
int  index 
)
inlineprotected

◆ GetMetatable()

void LuaMetaTypeBase::GetMetatable ( ) const
Here is the call graph for this function:

◆ GetMetatableFromName()

bool LuaMetaTypeBase::GetMetatableFromName ( lua_State *  l,
const char *  name 
)
static

◆ GetMethodTable()

void LuaMetaTypeBase::GetMethodTable ( lua_State *  L,
int  index 
)
inlineprotected

◆ GetNames()

void LuaMetaTypeBase::GetNames ( std::vector< std::string > &  names,
const std::string &  prefix = "",
bool  methodsOnly = false 
)
static
Here is the call graph for this function:

◆ GetParent()

const char * LuaMetaTypeBase::GetParent ( ) const
inline

◆ getter_member_cfn_wrapper_()

template<typename T >
static int LuaMetaTypeBase::getter_member_cfn_wrapper_ ( lua_State *  L)
inlinestaticprotected

◆ getter_member_fn_wrapper_()

template<typename T , typename Dt , typename Dt2 >
static int LuaMetaTypeBase::getter_member_fn_wrapper_ ( lua_State *  L)
inlinestaticprotected
Here is the call graph for this function:

◆ GetTypeName()

const char * LuaMetaTypeBase::GetTypeName ( ) const
inline

◆ IsValid()

bool LuaMetaTypeBase::IsValid ( ) const
inline

◆ member_cfn_wrapper_()

template<typename T >
static int LuaMetaTypeBase::member_cfn_wrapper_ ( lua_State *  L)
inlinestaticprotected

◆ member_fn_wrapper_() [1/2]

template<typename T , typename Rt , typename... Args>
static std::enable_if<!std::is_same< Rt, void >::value, int >::type LuaMetaTypeBase::member_fn_wrapper_ ( lua_State *  L)
inlinestaticprotected
Here is the call graph for this function:

◆ member_fn_wrapper_() [2/2]

template<typename T , typename Rt , typename... Args>
static std::enable_if< std::is_same< Rt, void >::value, int >::type LuaMetaTypeBase::member_fn_wrapper_ ( lua_State *  L)
inlinestaticprotected
Here is the call graph for this function:

◆ member_wrapper_()

template<typename T , typename Dt >
static int LuaMetaTypeBase::member_wrapper_ ( lua_State *  L)
inlinestaticprotected

◆ PullFreeFunction()

template<typename T >
static T LuaMetaTypeBase::PullFreeFunction ( lua_State *  L,
int  index 
)
inlinestaticprotected

◆ PullPointerToMember()

template<typename MemT >
static MemT & LuaMetaTypeBase::PullPointerToMember ( lua_State *  L,
int  idx 
)
inlinestaticprotected

◆ PushFreeFunction()

template<typename T >
static void LuaMetaTypeBase::PushFreeFunction ( lua_State *  L,
obj 
)
inlinestaticprotected

◆ PushPointerToMember()

template<typename MemT >
static void LuaMetaTypeBase::PushPointerToMember ( lua_State *  L,
MemT  obj 
)
inlinestaticprotected

◆ SetParent()

void LuaMetaTypeBase::SetParent ( const char *  parent)
inline

◆ StartRecording()

void LuaMetaTypeBase::StartRecording ( )
inline
Here is the call graph for this function:

◆ StopRecording()

void LuaMetaTypeBase::StopRecording ( )
inline
Here is the call graph for this function:

◆ TestUserdata()

void * LuaMetaTypeBase::TestUserdata ( lua_State *  l,
int  index,
const char *  name 
)
static
Here is the call graph for this function:

Member Data Documentation

◆ m_index

int LuaMetaTypeBase::m_index = 0
protected

◆ m_lua

lua_State* LuaMetaTypeBase::m_lua
protected

◆ m_parent

std::string LuaMetaTypeBase::m_parent
protected

◆ m_ref

int LuaMetaTypeBase::m_ref = LUA_NOREF
protected

◆ m_typeName

std::string LuaMetaTypeBase::m_typeName
protected

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