From 33014cb6d8f35771ea9d2c7ab605452ee1c5997f Mon Sep 17 00:00:00 2001 From: Jimmi Holst Christensen Date: Wed, 14 Mar 2018 14:15:24 +0100 Subject: Added command line argument parser. * Zig crashes when trying to compile this code --- bits.zig | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 bits.zig (limited to 'bits.zig') diff --git a/bits.zig b/bits.zig new file mode 100644 index 0000000..64f7d8b --- /dev/null +++ b/bits.zig @@ -0,0 +1,9 @@ +const math = @import("std").math; + +pub fn set(comptime Int: type, num: Int, bit: math.Log2Int(Int), value: bool) Int { + return (num & ~(Int(1) << bit)) | (Int(value) << bit); +} + +pub fn get(comptime Int: type, num: Int, bit: math.Log2Int(Int)) bool { + return ((num >> bit) & 1) != 0; +} -- cgit v1.2.3