Cuberite
A lightweight, fast and extensible game server for Minecraft
Classes | Macros
LuaState.h File Reference
#include "lua/src/lauxlib.h"
#include "../Defines.h"
#include "../FunctionRef.h"
#include "../Registries/CustomStatistics.h"
#include "PluginManager.h"
#include "LuaState_Typedefs.inc"
#include "LuaState_Declaration.inc"
Include dependency graph for LuaState.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  cLuaState::cCallback
 Represents a stored callback to Lua that C++ code can call. More...
 
class  cLuaState::cLock
 Provides a RAII-style locking for the LuaState. More...
 
class  cLuaState
 Encapsulates a Lua state and provides some syntactic sugar for common operations. More...
 
class  cLuaStateTracker
 Keeps track of all create cLuaState instances. More...
 
class  cLuaState::cNil
 A dummy class that's used only to push a constant nil as a function parameter in Call(). More...
 
class  cLuaState::cOptionalCallback
 Same thing as cCallback, but GetStackValue() won't fail if the callback value is nil. More...
 
class  cLuaState::cOptionalParam< T >
 Represents a parameter that is optional - calling a GetStackValue() with this object will not fail if the value on the Lua stack is nil. More...
 
class  cLuaState::cRef
 Used for storing references to object in the global registry. More...
 
class  cLuaState::cRet
 A dummy class that's used only to delimit function args from return values for cLuaState::Call() More...
 
class  cLuaState::cStackBalanceCheck
 Asserts that the Lua stack has the same amount of entries when this object is destructed, as when it was constructed. More...
 
class  cLuaState::cStackBalancePopper
 Makes sure that the Lua state's stack has the same number of elements on destruction as it had on construction of this object (RAII). More...
 
class  cLuaState::cStackTable
 Represents a table on the Lua stack. More...
 
class  cLuaState::cStackValue
 A RAII class for values pushed onto the Lua stack. More...
 
class  cLuaState::cTableRef
 Represents a stored Lua table with callback functions that C++ code can call. More...
 
class  cLuaState::cTrackedRef
 Represents a reference to a Lua object that has a tracked lifetime -. More...
 

Macros

#define ASSERT_LUA_STACK_BALANCE(...)   cStackBalanceCheck STRINGIFY(Check, __COUNTER__)(__FILE__, __LINE__, __VA_ARGS__)
 
#define STRINGIFY(X, Y)   STRINGIFY2(X, Y)
 
#define STRINGIFY2(X, Y)   X##Y
 

Macro Definition Documentation

◆ ASSERT_LUA_STACK_BALANCE

#define ASSERT_LUA_STACK_BALANCE (   ...)    cStackBalanceCheck STRINGIFY(Check, __COUNTER__)(__FILE__, __LINE__, __VA_ARGS__)

Definition at line 102 of file LuaState.h.

◆ STRINGIFY

#define STRINGIFY (   X,
 
)    STRINGIFY2(X, Y)

Definition at line 101 of file LuaState.h.

◆ STRINGIFY2

#define STRINGIFY2 (   X,
 
)    X##Y

Definition at line 100 of file LuaState.h.