aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDavid Walter Seikel2014-05-16 11:55:16 +1000
committerDavid Walter Seikel2014-05-16 11:55:16 +1000
commit10dae68ead959518650884a91bc2ca75a0afada0 (patch)
treecf0a0c0f050cc546cc34bc67693232357a558fa2
parentTODO++ (diff)
downloadSledjHamr-10dae68ead959518650884a91bc2ca75a0afada0.zip
SledjHamr-10dae68ead959518650884a91bc2ca75a0afada0.tar.gz
SledjHamr-10dae68ead959518650884a91bc2ca75a0afada0.tar.bz2
SledjHamr-10dae68ead959518650884a91bc2ca75a0afada0.tar.xz
Skang moduleBegin() stuffs the module in the C registry, so no one has to do this now.
NOTE - It uses a Lua debug function for this.
-rw-r--r--lib/skang.lua1
-rw-r--r--src/GuiLua/test_c.c2
-rw-r--r--src/purkle/purkle.c2
3 files changed, 1 insertions, 4 deletions
diff --git a/lib/skang.lua b/lib/skang.lua
index 0f91e44..394c3f8 100644
--- a/lib/skang.lua
+++ b/lib/skang.lua
@@ -95,6 +95,7 @@ moduleBegin = function (name, author, copyright, version, timestamp, skin, isLua
95 -- Returning it at the end does the same thing. 95 -- Returning it at the end does the same thing.
96 -- This is so that we can have all the module stuff at the top, in this function. 96 -- This is so that we can have all the module stuff at the top, in this function.
97 -- Should do this before any further require(), so that circular references don't blow out. 97 -- Should do this before any further require(), so that circular references don't blow out.
98 debug.getregistry()[name] = _M -- Stuff the result in the C registry.
98 99
99 -- Save the callers environment. 100 -- Save the callers environment.
100 local savedEnvironment 101 local savedEnvironment
diff --git a/src/GuiLua/test_c.c b/src/GuiLua/test_c.c
index f548e4d..e85814b 100644
--- a/src/GuiLua/test_c.c
+++ b/src/GuiLua/test_c.c
@@ -65,8 +65,6 @@ int luaopen_test_c(lua_State *L)
65 65
66// local _M = skang.moduleBegin('test_c', nil, 'Copyright 2014 David Seikel', '0.1', '2014-03-27 03:57:00', nil, false) 66// local _M = skang.moduleBegin('test_c', nil, 'Copyright 2014 David Seikel', '0.1', '2014-03-27 03:57:00', nil, false)
67 push_lua(L, "@ ( $ ~ $ $ $ ~ ! )", skang, MODULEBEGIN, ourName, "Copyright 2014 David Seikel", "0.1", "2014-03-27 03:57:00", 0, 1); 67 push_lua(L, "@ ( $ ~ $ $ $ ~ ! )", skang, MODULEBEGIN, ourName, "Copyright 2014 David Seikel", "0.1", "2014-03-27 03:57:00", 0, 1);
68 lua_setfield(L, LUA_REGISTRYINDEX, ourName);
69 lua_getfield(L, LUA_REGISTRYINDEX, ourName);
70 _M = lua_gettop(L); 68 _M = lua_gettop(L);
71 69
72// This uses function{} style. 70// This uses function{} style.
diff --git a/src/purkle/purkle.c b/src/purkle/purkle.c
index f86f3f3..6c211c0 100644
--- a/src/purkle/purkle.c
+++ b/src/purkle/purkle.c
@@ -65,8 +65,6 @@ int luaopen_purkle(lua_State *L)
65 65
66// local _M = skang.moduleBegin('test_c', nil, 'Copyright 2014 David Seikel', '0.1', '2014-03-27 03:57:00', nil, false) 66// local _M = skang.moduleBegin('test_c', nil, 'Copyright 2014 David Seikel', '0.1', '2014-03-27 03:57:00', nil, false)
67 push_lua(L, "@ ( $ ~ $ $ $ ~ ! )", skang, MODULEBEGIN, ourName, "Copyright 2014 David Seikel", "0.1", "2014-05-08 07:18:00", 0, 1); 67 push_lua(L, "@ ( $ ~ $ $ $ ~ ! )", skang, MODULEBEGIN, ourName, "Copyright 2014 David Seikel", "0.1", "2014-05-08 07:18:00", 0, 1);
68 lua_setfield(L, LUA_REGISTRYINDEX, ourName);
69 lua_getfield(L, LUA_REGISTRYINDEX, ourName);
70 _M = lua_gettop(L); 68 _M = lua_gettop(L);
71 69
72 push_lua(L, "@ ( = $ $ & $ )", skang, THINGASM, _M, "append", "Append text to the history box.", append, "string", 0); 70 push_lua(L, "@ ( = $ $ & $ )", skang, THINGASM, _M, "append", "Append text to the history box.", append, "string", 0);