From 25d0bb756f575b31971c6d06151dfacc5e681695 Mon Sep 17 00:00:00 2001 From: Phil Dawes Date: Mon, 17 Aug 2009 21:37:06 +0100 Subject: [PATCH] added boolean fns to vm --- vm/booleans.cpp | 14 ++++++++++++-- vm/vm.hpp | 4 ++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/vm/booleans.cpp b/vm/booleans.cpp index 8407e10099..6a1bb79298 100644 --- a/vm/booleans.cpp +++ b/vm/booleans.cpp @@ -3,14 +3,24 @@ namespace factor { -VM_C_API void box_boolean(bool value) +void factorvm::box_boolean(bool value) { dpush(value ? T : F); } -VM_C_API bool to_boolean(cell value) +VM_C_API void box_boolean(bool value) +{ + return vm->box_boolean(value); +} + +bool factorvm::to_boolean(cell value) { return value != F; } +VM_C_API bool to_boolean(cell value) +{ + return vm->to_boolean(value); +} + } diff --git a/vm/vm.hpp b/vm/vm.hpp index 087e1ebe95..fbdfe125d3 100644 --- a/vm/vm.hpp +++ b/vm/vm.hpp @@ -221,6 +221,10 @@ struct factorvm { inline void vmprim_string_nth(); inline void vmprim_set_string_nth_fast(); inline void vmprim_set_string_nth_slow(); + + //booleans + void box_boolean(bool value); + bool to_boolean(cell value); // next method here: