util.bit53: Add bnot() method
authorMatthew Wild <mwild1@gmail.com>
Fri, 01 Mar 2024 17:22:29 +0000
changeset 13453 9912baa541c0
parent 13452 93b4ce0115f0
child 13454 f36e1e1b84fe
util.bit53: Add bnot() method
spec/util_bitcompat_spec.lua
util/bit53.lua
--- a/spec/util_bitcompat_spec.lua	Wed Feb 28 22:31:06 2024 +0100
+++ b/spec/util_bitcompat_spec.lua	Fri Mar 01 17:22:29 2024 +0000
@@ -24,4 +24,8 @@
 	it("lshift works", function ()
 		assert.equal(0xFF00, bit.lshift(0xFF, 8));
 	end);
+
+	it("bnot works", function ()
+		assert.equal(0x0000FF00, bit.band(0xFFFFFFFF, bit.bnot(0xFFFF00FF)));
+	end);
 end);
--- a/util/bit53.lua	Wed Feb 28 22:31:06 2024 +0100
+++ b/util/bit53.lua	Fri Mar 01 17:22:29 2024 +0000
@@ -27,6 +27,9 @@
 		end
 		return ret;
 	end;
+	bnot   = function (x)
+		return ~x;
+	end;
 	rshift = function (a, n) return a >> n end;
 	lshift = function (a, n) return a << n end;
 };