Kouhei Sutou
null+****@clear*****
Tue May 27 23:57:55 JST 2014
Kouhei Sutou 2014-05-27 23:57:55 +0900 (Tue, 27 May 2014) New Revision: d0f0b7d8189e130e65754abb953c97c8b6b9fc14 https://github.com/groonga/groonga/commit/d0f0b7d8189e130e65754abb953c97c8b6b9fc14 Message: mrb: use Groonga::Accessor#find_index Modified files: lib/mrb/mrb_expr.c Modified: lib/mrb/mrb_expr.c (+8 -3) =================================================================== --- lib/mrb/mrb_expr.c 2014-05-27 23:57:43 +0900 (adb652e) +++ lib/mrb/mrb_expr.c 2014-05-27 23:57:55 +0900 (444537e) @@ -370,12 +370,17 @@ scan_info_build(grn_ctx *ctx, grn_obj *expr, int *n, mrb_fixnum_value(1)); } } else if (GRN_ACCESSORP(*p)) { + mrb_value mrb_target; + mrb_value mrb_index_info; + mrb_target = mrb_grn_accessor_new(mrb, (grn_accessor *)(*p)); grn_scan_info_set_flags(si, grn_scan_info_get_flags(si) | SCAN_ACCESSOR); - if (grn_column_index(ctx, *p, c->op, &index, 1, &sid)) { + mrb_index_info = mrb_funcall(mrb, mrb_target, "find_index", 1, + mrb_fixnum_value(c->op)); + if (!mrb_nil_p(mrb_index_info)) { mrb_si = mrb_grn_scan_info_new(mrb, si); mrb_funcall(mrb, mrb_si, "put_index", 3, - mrb_cptr_value(mrb, index), - mrb_fixnum_value(sid), + mrb_funcall(mrb, mrb_index_info, "index", 0), + mrb_funcall(mrb, mrb_index_info, "section_id", 0), mrb_fixnum_value(1)); } } else { -------------- next part -------------- HTML����������������������������...Download