λ61
Loading...
Searching...
No Matches
l61::ScriptEngine Namespace Reference

Classes

class  BuildScript
class  FileBackedScriptEnvironment
class  RunnableScriptEnvironment
class  ScriptEnvironment

Functions

ScriptEnvironmentgetScriptCtx ()
l61_statgetL61Ctx ()
sol::state & getScriptLuaState ()
 l61_abstract_call (void preRun(lua_State *L, lua_Debug *D))
 AbstractScriptDebugger (ScriptEnvironment *script, l61_stat &lstat)
 AbstractScriptDebugger (const AbstractScriptDebugger &)=delete
AbstractScriptDebuggeroperator= (const AbstractScriptDebugger &)=delete
 l61_abstract_destructor (AbstractScriptDebugger)
 l61_interface_call (public, sol::protected_function_result runCodeBlock(const std::string &luaCode))
 Runs arbitrary lua code from a string.
 l61_interface_call (public, void specialRun(const std::function< void(sol::state &)> &func))
 Allows you to run arbitrary code involving the Script state.
 l61_interface_call (public, void attachDebugger(AbstractScriptDebugger *debugger))
 Attach a debugger to this script environment.
 l61_interface_call (public, void exec(const std::string &code))
 for user input
 l61_interface_deconstructor (IBasicScriptEngine)
sol::table makeSubTable (const std::string &&name, sol::table table)
void standard_lua_debugger_hook (lua_State *L, lua_Debug *D)

Variables

l61_abstract_class AbstractScriptDebugger
l61_statlstat
l61_interface IBasicScriptEngine

Function Documentation

◆ AbstractScriptDebugger() [1/2]

l61::ScriptEngine::AbstractScriptDebugger ( const AbstractScriptDebugger & )
delete

◆ AbstractScriptDebugger() [2/2]

l61::ScriptEngine::AbstractScriptDebugger ( ScriptEnvironment * script,
l61_stat & lstat )
protected

◆ getL61Ctx()

l61_stat & l61::ScriptEngine::AbstractScriptDebugger::getL61Ctx ( )
protected

◆ getScriptCtx()

ScriptEnvironment * l61::ScriptEngine::getScriptCtx ( )
protected

◆ getScriptLuaState()

sol::state & l61::ScriptEngine::AbstractScriptDebugger::getScriptLuaState ( )
protected

◆ l61_abstract_call()

l61::ScriptEngine::l61_abstract_call ( void preRunlua_State *L, lua_Debug *D)
protected

◆ l61_abstract_destructor()

l61::ScriptEngine::l61_abstract_destructor ( AbstractScriptDebugger )

◆ l61_interface_call() [1/4]

l61::ScriptEngine::l61_interface_call ( public ,
sol::protected_function_result runCodeBlockconst std::string &luaCode )

Runs arbitrary lua code from a string.

Parameters
luaCodeString containing lua code
Returns
Returns the function results of the Lua code

◆ l61_interface_call() [2/4]

l61::ScriptEngine::l61_interface_call ( public ,
void attachDebuggerAbstractScriptDebugger *debugger )

Attach a debugger to this script environment.

Parameters
debuggerPointer to a debugger

◆ l61_interface_call() [3/4]

l61::ScriptEngine::l61_interface_call ( public ,
void execconst std::string &code )

for user input

Parameters
codelua code

◆ l61_interface_call() [4/4]

l61::ScriptEngine::l61_interface_call ( public ,
void specialRunconst std::function< void(sol::state &)> &func )

Allows you to run arbitrary code involving the Script state.

Parameters
funcA lambda or a function To run your arbitrary code
Note
This does leak the lua state

◆ l61_interface_deconstructor()

l61::ScriptEngine::l61_interface_deconstructor ( IBasicScriptEngine )

◆ makeSubTable()

sol::table l61::ScriptEngine::makeSubTable ( const std::string && name,
sol::table table )
inline

◆ operator=()

AbstractScriptDebugger & l61::ScriptEngine::operator= ( const AbstractScriptDebugger & )
delete

◆ standard_lua_debugger_hook()

void l61::ScriptEngine::standard_lua_debugger_hook ( lua_State * L,
lua_Debug * D )

Variable Documentation

◆ AbstractScriptDebugger

l61_abstract_class l61::ScriptEngine::AbstractScriptDebugger
Initial value:
{
private:
ScriptEnvironment* const scriptCtx
Definition ScriptEnvironment.hpp:39

◆ IBasicScriptEngine

l61_interface l61::ScriptEngine::IBasicScriptEngine
Initial value:
{
l61_interface_call(protected, sol::state& getLuaCtx())
#define l61_interface_call(access_level, sig)
This denotes that a call within an interface is a pure virtual.
Definition PseudoKeywords.hpp:52

◆ lstat

l61_stat& l61::ScriptEngine::lstat