Пытаюсь в моей dll применить код на Си
всё хорошо, но в Луа 5.1. нет функции luaL_len. Она появилась в более поздних версиях.
Вот код этой функции в Луа 5.3.
Как мне это внедрить в свою dll?
Как дописать строку в lauxlib.h - это понятно. А вот файла lauxlib.c в моей Луа 5.1.5 вообще нет.
Код |
---|
static int forLua_SumArray (lua_State* L) { // Get the length of the table (same as # operator in Lua) int n = luaL_len(L, 1); double sum = 0.0; // For each index from 1 to n, get the table value as a number and add to sum for (int i = 1; i <= n; ++i) { lua_rawgeti(L, 1, i); sum += lua_tonumber(L, -1); lua_pop(L, 1); } lua_pushnumber(L, sum); return 1; } |
Вот код этой функции в Луа 5.3.
Как мне это внедрить в свою dll?
Как дописать строку в lauxlib.h - это понятно. А вот файла lauxlib.c в моей Луа 5.1.5 вообще нет.