Kouhei Sutou
null+****@clear*****
Sun Apr 21 16:58:56 JST 2013
Kouhei Sutou 2013-04-21 16:58:56 +0900 (Sun, 21 Apr 2013) New Revision: 65d0d9e061193cfb15a721460ab854b7a5f95351 https://github.com/mroonga/mroonga/commit/65d0d9e061193cfb15a721460ab854b7a5f95351 Message: Add normalize() method to mrn::FieldNormalizer Modified files: lib/mrn_field_normalizer.cpp lib/mrn_field_normalizer.hpp Modified: lib/mrn_field_normalizer.cpp (+14 -0) =================================================================== --- lib/mrn_field_normalizer.cpp 2013-04-21 16:58:03 +0900 (a3faa57) +++ lib/mrn_field_normalizer.cpp 2013-04-21 16:58:56 +0900 (e30b464) @@ -18,6 +18,7 @@ */ #include "mrn_field_normalizer.hpp" +#include "mrn_encoding.hpp" // for debug #define MRN_CLASS_NAME "mrn::FieldNormalizer" @@ -88,6 +89,19 @@ namespace mrn { DBUG_RETURN(text_type_p); } + grn_obj *FieldNormalizer::normalize(const char *string, + unsigned int string_length) { + MRN_DBUG_ENTER_METHOD(); + grn_obj *normalizer = find_grn_normalizer(); + int flags = 0; + grn_encoding original_encoding = GRN_CTX_GET_ENCODING(ctx_); + encoding::set(ctx_, field_->charset()); + grn_obj *grn_string = grn_string_open(ctx_, string, string_length, + normalizer, flags); + GRN_CTX_SET_ENCODING(ctx_, original_encoding); + DBUG_RETURN(grn_string); + } + grn_obj *FieldNormalizer::find_grn_normalizer() { MRN_DBUG_ENTER_METHOD(); Modified: lib/mrn_field_normalizer.hpp (+1 -0) =================================================================== --- lib/mrn_field_normalizer.hpp 2013-04-21 16:58:03 +0900 (049c4a1) +++ lib/mrn_field_normalizer.hpp 2013-04-21 16:58:56 +0900 (436d157) @@ -32,6 +32,7 @@ namespace mrn { ~FieldNormalizer(); bool is_need_normalize(); + grn_obj *normalize(const char *string, unsigned int string_length); grn_obj *find_grn_normalizer(); private: -------------- next part -------------- HTML����������������������������...Download