You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by nw...@apache.org on 2015/07/11 14:54:26 UTC

[2/6] lucy git commit: Adjust for Clownfish::Boolean changes

Adjust for Clownfish::Boolean changes


Project: http://git-wip-us.apache.org/repos/asf/lucy/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/957ae1e5
Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/957ae1e5
Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/957ae1e5

Branch: refs/heads/master
Commit: 957ae1e5c355f3b2bddfa0ed37d6063ed6f93cd6
Parents: 20dbfa3
Author: Nick Wellnhofer <we...@aevum.de>
Authored: Thu Jul 9 13:44:51 2015 +0200
Committer: Nick Wellnhofer <we...@aevum.de>
Committed: Thu Jul 9 16:38:43 2015 +0200

----------------------------------------------------------------------
 core/Lucy/Analysis/Normalizer.c          |  4 ++--
 core/Lucy/Test/Analysis/TestNormalizer.c |  4 ++--
 core/Lucy/Test/Util/TestFreezer.c        |  4 ++--
 core/Lucy/Util/Freezer.c                 | 30 +++++++++++++--------------
 core/Lucy/Util/Json.c                    |  7 +++++--
 core/Lucy/Util/ToolSet.h                 |  1 +
 6 files changed, 27 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucy/blob/957ae1e5/core/Lucy/Analysis/Normalizer.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Analysis/Normalizer.c b/core/Lucy/Analysis/Normalizer.c
index eea503e..6be0e96 100644
--- a/core/Lucy/Analysis/Normalizer.c
+++ b/core/Lucy/Analysis/Normalizer.c
@@ -136,10 +136,10 @@ Normalizer_Dump_IMP(Normalizer *self) {
 
     Hash_Store_Utf8(dump, "normalization_form", 18, (Obj*)form);
 
-    BoolNum *case_fold = Bool_singleton(!!(options & UTF8PROC_CASEFOLD));
+    Boolean *case_fold = Bool_singleton(!!(options & UTF8PROC_CASEFOLD));
     Hash_Store_Utf8(dump, "case_fold", 9, (Obj*)case_fold);
 
-    BoolNum *strip_accents = Bool_singleton(!!(options & UTF8PROC_STRIPMARK));
+    Boolean *strip_accents = Bool_singleton(!!(options & UTF8PROC_STRIPMARK));
     Hash_Store_Utf8(dump, "strip_accents", 13, (Obj*)strip_accents);
 
     return dump;

http://git-wip-us.apache.org/repos/asf/lucy/blob/957ae1e5/core/Lucy/Test/Analysis/TestNormalizer.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Test/Analysis/TestNormalizer.c b/core/Lucy/Test/Analysis/TestNormalizer.c
index 0b8f85c..34bd173 100644
--- a/core/Lucy/Test/Analysis/TestNormalizer.c
+++ b/core/Lucy/Test/Analysis/TestNormalizer.c
@@ -81,9 +81,9 @@ test_normalization(TestBatchRunner *runner) {
         Hash *test = (Hash*)Vec_Fetch(tests, i);
         String *form = (String*)Hash_Fetch_Utf8(
                             test, "normalization_form", 18);
-        bool case_fold = Bool_Get_Value((BoolNum*)Hash_Fetch_Utf8(
+        bool case_fold = Bool_Get_Value((Boolean*)Hash_Fetch_Utf8(
                                               test, "case_fold", 9));
-        bool strip_accents = Bool_Get_Value((BoolNum*)Hash_Fetch_Utf8(
+        bool strip_accents = Bool_Get_Value((Boolean*)Hash_Fetch_Utf8(
                                                   test, "strip_accents", 13));
         Normalizer *normalizer = Normalizer_new(form, case_fold, strip_accents);
         Vector *words = (Vector*)Hash_Fetch_Utf8(test, "words", 5);

http://git-wip-us.apache.org/repos/asf/lucy/blob/957ae1e5/core/Lucy/Test/Util/TestFreezer.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Test/Util/TestFreezer.c b/core/Lucy/Test/Util/TestFreezer.c
index 01fb687..b77f20b 100644
--- a/core/Lucy/Test/Util/TestFreezer.c
+++ b/core/Lucy/Test/Util/TestFreezer.c
@@ -125,7 +125,7 @@ test_num(TestBatchRunner *runner) {
     Float64   *f64_thaw = (Float64*)S_freeze_thaw((Obj*)f64);
     Integer32 *i32_thaw = (Integer32*)S_freeze_thaw((Obj*)i32);
     Integer64 *i64_thaw = (Integer64*)S_freeze_thaw((Obj*)i64);
-    BoolNum   *true_thaw = (BoolNum*)S_freeze_thaw((Obj*)CFISH_TRUE);
+    Boolean   *true_thaw = (Boolean*)S_freeze_thaw((Obj*)CFISH_TRUE);
 
     TEST_TRUE(runner, Float32_Equals(f32, (Obj*)f32_thaw),
               "Float32 freeze/thaw");
@@ -136,7 +136,7 @@ test_num(TestBatchRunner *runner) {
     TEST_TRUE(runner, Int64_Equals(i64, (Obj*)i64_thaw),
               "Integer64 freeze/thaw");
     TEST_TRUE(runner, Bool_Equals(CFISH_TRUE, (Obj*)true_thaw),
-              "BoolNum freeze/thaw");
+              "Boolean freeze/thaw");
 
     DECREF(i64_thaw);
     DECREF(i32_thaw);

http://git-wip-us.apache.org/repos/asf/lucy/blob/957ae1e5/core/Lucy/Util/Freezer.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Util/Freezer.c b/core/Lucy/Util/Freezer.c
index ed6e38c..4512017 100644
--- a/core/Lucy/Util/Freezer.c
+++ b/core/Lucy/Util/Freezer.c
@@ -66,11 +66,7 @@ Freezer_serialize(Obj *obj, OutStream *outstream) {
     }
     else if (Obj_is_a(obj, NUM)) {
         if (Obj_is_a(obj, INTNUM)) {
-            if (Obj_is_a(obj, BOOLNUM)) {
-                bool val = Bool_Get_Value((BoolNum*)obj);
-                OutStream_Write_U8(outstream, (uint8_t)val);
-            }
-            else if (Obj_is_a(obj, INTEGER32)) {
+            if (Obj_is_a(obj, INTEGER32)) {
                 int32_t val = Int32_Get_Value((Integer32*)obj);
                 OutStream_Write_C32(outstream, (uint32_t)val);
             }
@@ -90,6 +86,10 @@ Freezer_serialize(Obj *obj, OutStream *outstream) {
             }
         }
     }
+    else if (Obj_is_a(obj, BOOLEAN)) {
+        bool val = Bool_Get_Value((Boolean*)obj);
+        OutStream_Write_U8(outstream, (uint8_t)val);
+    }
     else if (Obj_is_a(obj, QUERY)) {
         Query_Serialize((Query*)obj, outstream);
     }
@@ -139,15 +139,7 @@ Freezer_deserialize(Obj *obj, InStream *instream) {
     }
     else if (Obj_is_a(obj, NUM)) {
         if (Obj_is_a(obj, INTNUM)) {
-            if (Obj_is_a(obj, BOOLNUM)) {
-                bool value = !!InStream_Read_U8(instream);
-                Obj *result = value ? INCREF(CFISH_TRUE) : INCREF(CFISH_FALSE);
-                // FIXME: This DECREF is essentially a no-op causing a
-                // memory leak.
-                DECREF(obj);
-                obj = result;
-            }
-            else if (Obj_is_a(obj, INTEGER32)) {
+            if (Obj_is_a(obj, INTEGER32)) {
                 int32_t value = (int32_t)InStream_Read_C32(instream);
                 obj = (Obj*)Int32_init((Integer32*)obj, value);
             }
@@ -167,6 +159,14 @@ Freezer_deserialize(Obj *obj, InStream *instream) {
             }
         }
     }
+    else if (Obj_is_a(obj, BOOLEAN)) {
+        bool value = !!InStream_Read_U8(instream);
+        Obj *result = value ? INCREF(CFISH_TRUE) : INCREF(CFISH_FALSE);
+        // FIXME: This DECREF is essentially a no-op causing a
+        // memory leak.
+        DECREF(obj);
+        obj = result;
+    }
     else if (Obj_is_a(obj, QUERY)) {
         obj = (Obj*)Query_Deserialize((Query*)obj, instream);
     }
@@ -386,7 +386,7 @@ Freezer_dump(Obj *obj) {
     else if (Obj_is_a(obj, QUERY)) {
         return Query_Dump((Query*)obj);
     }
-    else if (Obj_is_a(obj, NUM)) {
+    else if (Obj_is_a(obj, NUM) || Obj_is_a(obj, BOOLEAN)) {
         return Obj_Clone(obj);
     }
     else {

http://git-wip-us.apache.org/repos/asf/lucy/blob/957ae1e5/core/Lucy/Util/Json.c
----------------------------------------------------------------------
diff --git a/core/Lucy/Util/Json.c b/core/Lucy/Util/Json.c
index 740595c..d440fe9 100644
--- a/core/Lucy/Util/Json.c
+++ b/core/Lucy/Util/Json.c
@@ -750,12 +750,15 @@ Json_obj_to_bool(Obj *obj) {
     if (!obj) {
         THROW(ERR, "Can't extract bool from NULL");
     }
-    else if (Obj_is_a(obj, STRING)) {
-        retval = (Str_To_I64((String*)obj) != 0);
+    else if (Obj_is_a(obj, BOOLEAN)) {
+        retval = Bool_Get_Value((Boolean*)obj);
     }
     else if (Obj_is_a(obj, NUM)) {
         retval = Num_To_Bool((Num*)obj);
     }
+    else if (Obj_is_a(obj, STRING)) {
+        retval = (Str_To_I64((String*)obj) != 0);
+    }
     else {
         THROW(ERR, "Can't extract bool from object of type %o",
               Obj_get_class_name(obj));

http://git-wip-us.apache.org/repos/asf/lucy/blob/957ae1e5/core/Lucy/Util/ToolSet.h
----------------------------------------------------------------------
diff --git a/core/Lucy/Util/ToolSet.h b/core/Lucy/Util/ToolSet.h
index ee1b810..23d321b 100644
--- a/core/Lucy/Util/ToolSet.h
+++ b/core/Lucy/Util/ToolSet.h
@@ -37,6 +37,7 @@ extern "C" {
 #include <string.h>
 #include "Clownfish/Obj.h"
 #include "Lucy/Object/BitVector.h"
+#include "Clownfish/Boolean.h"
 #include "Clownfish/ByteBuf.h"
 #include "Clownfish/String.h"
 #include "Clownfish/Err.h"