[Groonga-commit] groonga/groonga at d0f0b7d [master] mrb: use Groonga::Accessor#find_index

Zurück zum Archiv-Index

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 



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