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