From 806ed9ab851c1c85034626e707f739d00fcbcc68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20N=C3=BCcke?= Date: Thu, 28 May 2015 14:36:38 +0200 Subject: [PATCH] Making some more Lua 5.3 functions available and preparing for making UTF-8 lib available. The latter of which will require a recompile of the natives, so not yet. --- libs/OpenComputers-JNLua.jar | Bin 131637 -> 131662 bytes .../assets/opencomputers/lua/machine.lua | 24 +++++++++++++++--- .../server/machine/luac/LuaStateFactory.scala | 2 ++ 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/libs/OpenComputers-JNLua.jar b/libs/OpenComputers-JNLua.jar index 529f1aef45d67db061088e003b7ee44ec5f64023..f3abfe1f4e73dd2ec0fdb8a812ae0d50970bfbce 100644 GIT binary patch delta 10547 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 delta 10588 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 A$p8QV diff --git a/src/main/resources/assets/opencomputers/lua/machine.lua b/src/main/resources/assets/opencomputers/lua/machine.lua index af53ae390..8a08680c9 100644 --- a/src/main/resources/assets/opencomputers/lua/machine.lua +++ b/src/main/resources/assets/opencomputers/lua/machine.lua @@ -786,7 +786,9 @@ sandbox = { end, yield = function(...) -- custom yield part for bubbling sysyields return coroutine.yield(nil, ...) - end + end, + -- Lua 5.3. + isyieldable = coroutine.isyieldable }, string = { @@ -854,10 +856,16 @@ sandbox = { sinh = math.sinh, sqrt = math.sqrt, tan = math.tan, - tanh = math.tanh + tanh = math.tanh, + -- Lua 5.3. + maxinteger = math.maxinteger, + mininteger = math.mininteger, + tointeger = math.tointeger, + type = math.type, + ult = math.ult }, - -- No longer available in Lua 5.3. + -- Deprecated in Lua 5.3. bit32 = bit32 and { arshift = bit32.arshift, band = bit32.band, @@ -918,6 +926,16 @@ sandbox = { traceback = debug.traceback }, + -- Lua 5.3. + utf8 = utf8 and { + char = utf8.char, + charpattern = utf8.charpattern, + codes = utf8.codes, + codepoint = utf8.codepoint, + len = utf8.len, + offset = utf8.offset + }, + checkArg = checkArg } sandbox._G = sandbox diff --git a/src/main/scala/li/cil/oc/server/machine/luac/LuaStateFactory.scala b/src/main/scala/li/cil/oc/server/machine/luac/LuaStateFactory.scala index d049cf349..79ac20a09 100644 --- a/src/main/scala/li/cil/oc/server/machine/luac/LuaStateFactory.scala +++ b/src/main/scala/li/cil/oc/server/machine/luac/LuaStateFactory.scala @@ -57,6 +57,8 @@ object LuaStateFactory { state.openLib(jnlua.LuaState.Library.MATH) state.openLib(jnlua.LuaState.Library.STRING) state.openLib(jnlua.LuaState.Library.TABLE) + // TODO Enable once I update the natives. +// state.openLib(jnlua.LuaState.Library.UTF8) state.pop(7) } }