util.table, Makefile: New C module that allows pre-allocation of tables to improve...
authorMatthew Wild <mwild1@gmail.com>
Tue, 31 Mar 2015 10:59:17 +0000 (11:59 +0100)
committerMatthew Wild <mwild1@gmail.com>
Tue, 31 Mar 2015 10:59:17 +0000 (11:59 +0100)
util-src/Makefile
util-src/table.c [new file with mode: 0644]

index 3a1ba3f2af1f69f506c6ddfb93c5c4f51837e90c..3674975c04ef486c8a3abb297208eb7e8a5fc272 100644 (file)
@@ -14,9 +14,9 @@ CFLAGS+=-ggdb
 .PHONY: all install clean
 .SUFFIXES: .c .o .so
 
-all: encodings.so hashes.so net.so pposix.so signal.so
+all: encodings.so hashes.so net.so pposix.so signal.so table.so
 
-install: encodings.so hashes.so net.so pposix.so signal.so
+install: encodings.so hashes.so net.so pposix.so signal.so table.so
        install *.so ../util/
 
 clean:
diff --git a/util-src/table.c b/util-src/table.c
new file mode 100644 (file)
index 0000000..118ee33
--- /dev/null
@@ -0,0 +1,14 @@
+#include <lua.h>
+#include <lauxlib.h>
+
+static int Lcreate_table(lua_State* L) {
+       lua_createtable(L, luaL_checkinteger(L, 1), luaL_checkinteger(L, 2));
+       return 1;
+}
+
+int luaopen_util_table(lua_State *L) {
+       lua_newtable(L);
+       lua_pushcfunction(L, Lcreate_table);
+       lua_setfield(L, -2, "create");
+       return 1;
+}