Some reorganisation of the abf directories.
[fail.git] / lua / implementation.h
blob98477aa74070553afb74a7ebe4a0de0994cb3e73
1 #ifndef AWFUL_LUA_IMPLEMENTATION_H
2 #define AWFUL_LUA_IMPLEMENTATION_H
4 #include <sstream>
5 #include <map>
7 #include "core/pointer.h"
8 #include "core/refcounted.h"
9 #include "core/classtraits.h"
11 #include "lua/lauxlib.h"
12 #include "state.h"
13 #include "error.h"
15 #include "typecastmap.h"
16 #include "typecheck.h"
17 #include "basic_types.h"
18 #include "pointer.h"
19 #include "constpointer.h"
20 #include "enum.h"
21 #include "structboxing.h"
23 #include "attribute.h"
24 #include "method.h"
25 #include "signalref.h"
26 #include "signalrefindex.h"
27 #include "signalattr.h"
28 #include "signalconnect.h"
30 #include "class.h"
31 #include "struct.h"
32 #include "module.h"
34 namespace awful
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 );
49 #endif