aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lua/libraries/luax/luax.h14
-rw-r--r--src/lua/modules/jin.cpp9
2 files changed, 21 insertions, 2 deletions
diff --git a/src/lua/libraries/luax/luax.h b/src/lua/libraries/luax/luax.h
index b6b3e80..1c83912 100644
--- a/src/lua/libraries/luax/luax.h
+++ b/src/lua/libraries/luax/luax.h
@@ -401,6 +401,20 @@ inline void luax_setfieldstrings(lua_State* L, const luax_Str* strs)
}
}
+typedef struct luax_Num
+{
+ const char* name;
+ float number;
+};
+
+inline void luax_setfieldnumbers(lua_State* L, const luax_Num* strs)
+{
+ for (int i = 0; strs[i].name != 0; ++i)
+ {
+ luax_setfieldnumber(L, strs[i].name, strs[i].number);
+ }
+}
+
typedef luaL_Reg luax_Ref;
#endif // #if LUA_VERSION_NUM == 501
diff --git a/src/lua/modules/jin.cpp b/src/lua/modules/jin.cpp
index de49846..5e92ce1 100644
--- a/src/lua/modules/jin.cpp
+++ b/src/lua/modules/jin.cpp
@@ -53,12 +53,16 @@ namespace lua
static const luax_Str s[] = {
{ "version", VERSION },
- { "revision", REVISION_S },
{ "author", AUTHOR },
{ "codename", CODE_NAME },
{ 0, 0 }
};
+ static const luax_Num n[] = {
+ { "revision", REVISION },
+ { 0, 0 }
+ };
+
/* sub modules */
static const luax_Ref mods[] = {
{ "core", luaopen_core },
@@ -82,8 +86,9 @@ namespace lua
{
luax_globaltable(L, MODULE_NAME);
- /* register strings */
+ /* register values */
luax_setfieldstrings(L, s);
+ luax_setfieldnumbers(L, n);
/* register submodules */
for (int i = 0; mods[i].name; ++i)