diff options
Diffstat (limited to 'src/libzisp/value/boole.zig')
| -rw-r--r-- | src/libzisp/value/boole.zig | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/src/libzisp/value/boole.zig b/src/libzisp/value/boole.zig deleted file mode 100644 index 2e94e4d..0000000 --- a/src/libzisp/value/boole.zig +++ /dev/null @@ -1,33 +0,0 @@ -const Value = @import("../value.zig").Value; - -pub const f = Value{ .misc = .{ .value = .f } }; -pub const t = Value{ .misc = .{ .value = .t } }; - -// Zig API - -/// Checks if the value is a boole. -pub fn check(v: Value) bool { - return v.bits == f.bits or v.bits == t.bits; -} - -pub fn assert(v: Value) void { - if (!check(v)) { - v.dump(); - @panic("not bool"); - } -} - -pub fn pack(b: bool) Value { - return if (b) t else f; -} - -pub fn unpack(v: Value) bool { - assert(v); - return v.bits == t.bits; -} - -// Zisp API - -pub fn pred(v: Value) Value { - return pack(check(v)); -} |
