1 #ifndef AWFUL_LUA_IMPLEMENTATION_H
2 #define AWFUL_LUA_IMPLEMENTATION_H
7 #include "core/pointer.h"
8 #include "core/refcounted.h"
9 #include "core/classtraits.h"
11 #include "lua/lauxlib.h"
15 #include "typecastmap.h"
16 #include "typecheck.h"
17 #include "basic_types.h"
19 #include "constpointer.h"
21 #include "structboxing.h"
23 #include "attribute.h"
25 #include "signalref.h"
26 #include "signalrefindex.h"
27 #include "signalattr.h"
28 #include "signalconnect.h"
36 template< typename ModuleTag
> void LuaSetup()
38 lua_State
* pLS
= LuaState::GetInstance()->get();
39 LuaImpl::ModuleVisitor
v( pLS
);
41 module_traits
< ModuleTag
>::VisitQualifiedName( v
);
42 module_traits
< ModuleTag
>::VisitClasses( v
);
44 // Clear the lua stack in case the module contained no class.
45 lua_settop( LuaState::GetInstance()->get(), 0 );