aboutsummaryrefslogtreecommitdiff
path: root/core/compat.lua
diff options
context:
space:
mode:
authormitchell <70453897+667e-11@users.noreply.github.com>2011-12-20 08:56:56 -0500
committermitchell <70453897+667e-11@users.noreply.github.com>2011-12-20 08:56:56 -0500
commitd3c52504cae4e07287b0c057f64235726d7067d9 (patch)
treebea21168db35314b405518e20f96f5fad27933c2 /core/compat.lua
parent6aa238780bdb6c2f0258918c4b8eebf8d9cde608 (diff)
downloadtextadept-d3c52504cae4e07287b0c057f64235726d7067d9.tar.gz
textadept-d3c52504cae4e07287b0c057f64235726d7067d9.zip
Added more LuaJIT compatibility; core/compat.lua
Diffstat (limited to 'core/compat.lua')
-rw-r--r--core/compat.lua29
1 files changed, 22 insertions, 7 deletions
diff --git a/core/compat.lua b/core/compat.lua
index 953e06b4..c5248204 100644
--- a/core/compat.lua
+++ b/core/compat.lua
@@ -3,13 +3,6 @@
-- When using LuaJIT try to retain backwards compatibility (Lua 5.1).
-- LuaJIT is compiled with LUAJIT_ENABLE_LUA52COMPAT for some Lua 5.2 features.
--- In Lua 5.1, `xpcall` did not accept function arguments.
-local xpcall51 = xpcall
-function xpcall(f, error, ...)
- local args = {...}
- return xpcall51(function() return f(unpack(args)) end, error)
-end
-
-- In Lua 5.1, `load` did not take mode and environment parameters.
local load51 = load
function load(ld, source, mode, env)
@@ -26,9 +19,31 @@ function loadfile(filename, mode, env)
return f, err
end
+-- In Lua 5.1, `xpcall` did not accept function arguments.
+local xpcall51 = xpcall
+function xpcall(f, error, ...)
+ local args = {...}
+ return xpcall51(function() return f(unpack(args)) end, error)
+end
+
+-- In Lua 5.1, `module` exists.
+module = nil
+
+-- In Lua 5.1, `package.loaders` is `package.searchers`
+package.searchers = package.loaders
+
+-- TODO: table.pack
+-- In Lua 5.1, `table.pack` did not exist.
+
-- TODO: string.rep
-- In Lua 5.1, `string.rep` did not take separation string parameter.
+-- TODO: math.log, math.log10
+-- In Lua 5.1, `math.log` does not take base parameter and `math.log10` existed.
+
+-- In LuaJIT, `bit` is used instead of `bit32`
+bit32 = bit
+
-- In Lua 5.1, `os.execute` returned an integer depending on shell availability.
-- It also returned just a status code.
local os_execute51 = os.execute