[Groonga-commit] groonga/groonga at 91a713c [master] normalize: support blank char type

Zurück zum Archiv-Index

Kouhei Sutou null+****@clear*****
Fri Mar 10 14:13:04 JST 2017


Kouhei Sutou	2017-03-10 14:13:04 +0900 (Fri, 10 Mar 2017)

  New Revision: 91a713cb960d9be9757c6faf3f5196653348db7e
  https://github.com/groonga/groonga/commit/91a713cb960d9be9757c6faf3f5196653348db7e

  Message:
    normalize: support blank char type

  Modified files:
    lib/proc.c
    test/command/suite/normalize/remove_blank.expected
    test/command/suite/normalize/remove_blank.test

  Modified: lib/proc.c (+22 -9)
===================================================================
--- lib/proc.c    2017-02-28 14:12:12 +0900 (e5cb0f3)
+++ lib/proc.c    2017-03-10 14:13:04 +0900 (1baee1d)
@@ -1025,33 +1025,46 @@ char_type_name(grn_char_type type)
 {
   const char *name = "unknown";
 
-  switch (type) {
+#define CHAR_TYPE_NAME_WITH_BLANK(type_name) do {       \
+    if (GRN_CHAR_IS_BLANK(type)) {                      \
+      name = type_name "|blank";                        \
+    } else {                                            \
+      name = type_name;                                 \
+    }                                                   \
+  } while (GRN_FALSE)
+
+  switch (GRN_CHAR_TYPE(type)) {
   case GRN_CHAR_NULL :
-    name = "null";
+    CHAR_TYPE_NAME_WITH_BLANK("null");
     break;
   case GRN_CHAR_ALPHA :
-    name = "alpha";
+    CHAR_TYPE_NAME_WITH_BLANK("alpha");
     break;
   case GRN_CHAR_DIGIT :
-    name = "digit";
+    CHAR_TYPE_NAME_WITH_BLANK("digit");
     break;
   case GRN_CHAR_SYMBOL :
-    name = "symbol";
+    CHAR_TYPE_NAME_WITH_BLANK("symbol");
     break;
   case GRN_CHAR_HIRAGANA :
-    name = "hiragana";
+    CHAR_TYPE_NAME_WITH_BLANK("hiragana");
     break;
   case GRN_CHAR_KATAKANA :
-    name = "katakana";
+    CHAR_TYPE_NAME_WITH_BLANK("katakana");
     break;
   case GRN_CHAR_KANJI :
-    name = "kanji";
+    CHAR_TYPE_NAME_WITH_BLANK("kanji");
     break;
   case GRN_CHAR_OTHERS :
-    name = "others";
+    CHAR_TYPE_NAME_WITH_BLANK("other");
+    break;
+  default :
+    CHAR_TYPE_NAME_WITH_BLANK("unknown");
     break;
   }
 
+#undef CHAR_TYPE_NAME_WITH_BLANK
+
   return name;
 }
 

  Modified: test/command/suite/normalize/remove_blank.expected (+27 -2)
===================================================================
--- test/command/suite/normalize/remove_blank.expected    2017-02-28 14:12:12 +0900 (371e1a3)
+++ test/command/suite/normalize/remove_blank.expected    2017-03-10 14:13:04 +0900 (0f81a0d)
@@ -1,2 +1,27 @@
-normalize NormalizerAuto " a  b   c " REMOVE_BLANK|WITH_CHECKS
-[[0,0.0,0.0],{"normalized":"abc","types":[],"checks":[2,3,4]}]
+normalize NormalizerAuto " aa bbb   c " REMOVE_BLANK|WITH_TYPES|WITH_CHECKS
+[
+  [
+    0,
+    0.0,
+    0.0
+  ],
+  {
+    "normalized": "aabbbc",
+    "types": [
+      "alpha",
+      "alpha|blank",
+      "alpha",
+      "alpha",
+      "alpha|blank",
+      "alpha|blank"
+    ],
+    "checks": [
+      2,
+      1,
+      2,
+      1,
+      1,
+      4
+    ]
+  }
+]

  Modified: test/command/suite/normalize/remove_blank.test (+1 -1)
===================================================================
--- test/command/suite/normalize/remove_blank.test    2017-02-28 14:12:12 +0900 (585f2c5)
+++ test/command/suite/normalize/remove_blank.test    2017-03-10 14:13:04 +0900 (c345d7d)
@@ -1 +1 @@
-normalize NormalizerAuto " a  b   c " REMOVE_BLANK|WITH_CHECKS
+normalize NormalizerAuto " aa bbb   c " REMOVE_BLANK|WITH_TYPES|WITH_CHECKS
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Zurück zum Archiv-Index