Kouhei Sutou
null+****@clear*****
Wed Jul 8 11:19:58 JST 2015
Kouhei Sutou 2015-07-08 11:19:58 +0900 (Wed, 08 Jul 2015) New Revision: 467e7639dbb52d39d37e495c9dff72b9260d54f2 https://github.com/groonga/groonga/commit/467e7639dbb52d39d37e495c9dff72b9260d54f2 Message: mrb: bind selector proc related predicates Modified files: lib/mrb/mrb_procedure.c Modified: lib/mrb/mrb_procedure.c (+22 -0) =================================================================== --- lib/mrb/mrb_procedure.c 2015-07-08 11:18:24 +0900 (3dfe784) +++ lib/mrb/mrb_procedure.c 2015-07-08 11:19:58 +0900 (06ca210) @@ -42,6 +42,24 @@ mrb_grn_procedure_initialize(mrb_state *mrb, mrb_value self) } static mrb_value +mrb_grn_procedure_selector_p(mrb_state *mrb, mrb_value self) +{ + grn_ctx *ctx = (grn_ctx *)mrb->ud; + grn_obj *proc = DATA_PTR(self); + + return mrb_bool_value(grn_obj_is_selector_proc(ctx, proc)); +} + +static mrb_value +mrb_grn_procedure_selector_only_p(mrb_state *mrb, mrb_value self) +{ + grn_ctx *ctx = (grn_ctx *)mrb->ud; + grn_obj *proc = DATA_PTR(self); + + return mrb_bool_value(grn_obj_is_selector_only_proc(ctx, proc)); +} + +static mrb_value mrb_grn_procedure_scorer_p(mrb_state *mrb, mrb_value self) { grn_ctx *ctx = (grn_ctx *)mrb->ud; @@ -64,6 +82,10 @@ grn_mrb_procedure_init(grn_ctx *ctx) mrb_define_method(mrb, klass, "initialize", mrb_grn_procedure_initialize, MRB_ARGS_REQ(1)); + mrb_define_method(mrb, klass, "selector?", + mrb_grn_procedure_selector_p, MRB_ARGS_NONE()); + mrb_define_method(mrb, klass, "selector_only?", + mrb_grn_procedure_selector_only_p, MRB_ARGS_NONE()); mrb_define_method(mrb, klass, "scorer?", mrb_grn_procedure_scorer_p, MRB_ARGS_NONE()); } -------------- next part -------------- HTML����������������������������...Télécharger