view util/bit53.lua @ 12479:4d36fbcdd210 0.12

core.moduleapi: Fix 'global' property via :context() - #1748 The 'global' property should reflect whether the module API instance represents the global context or a VirtualHost or Component context. However the module:context() method did not override this, leading the property of the previous module shining trough, leading to bugs in code relying on the 'global' property. See also #1736
author Kim Alvefur <zash@zash.se>
date Wed, 27 Apr 2022 17:18:46 +0200
parents af02b033bd7f
children 9912baa541c0
line wrap: on
line source

-- Only the operators needed by net.websocket.frames are provided at this point
return {
	band   = function (a, b, ...)
		local ret = a & b;
		if ... then
			for i = 1, select("#", ...) do
				ret = ret & (select(i, ...));
			end
		end
		return ret;
	end;
	bor    = function (a, b, ...)
		local ret = a | b;
		if ... then
			for i = 1, select("#", ...) do
				ret = ret | (select(i, ...));
			end
		end
		return ret;
	end;
	bxor   = function (a, b, ...)
		local ret = a ~ b;
		if ... then
			for i = 1, select("#", ...) do
				ret = ret ~ (select(i, ...));
			end
		end
		return ret;
	end;
	rshift = function (a, n) return a >> n end;
	lshift = function (a, n) return a << n end;
};