mirror of
https://github.com/bjc/prosody.git
synced 2025-04-01 20:27:39 +03:00
If this module is require'd from a plugin on a Lua version without the global bit32 library, it may trip a warning about accessing globals.
18 lines
424 B
Lua
18 lines
424 B
Lua
-- Compatibility layer for bitwise operations
|
|
|
|
-- First try the bit32 lib
|
|
-- Lua 5.3 has it with compat enabled
|
|
-- Lua 5.2 has it by default
|
|
if rawget(_G, "bit32") then
|
|
return _G.bit32;
|
|
end
|
|
|
|
do
|
|
-- Lua 5.3 and 5.4 would be able to use native infix operators
|
|
local ok, bitop = pcall(require, "prosody.util.bit53")
|
|
if ok then
|
|
return bitop;
|
|
end
|
|
end
|
|
|
|
error "No bit module found. See https://prosody.im/doc/depends#bitop";
|