Kouhei Sutou
null+****@clear*****
Mon Jun 29 00:22:48 JST 2015
Kouhei Sutou 2015-06-29 00:22:48 +0900 (Mon, 29 Jun 2015) New Revision: 4830d2430ef4e17e188f2ab1a3cdc8b3fffe3659 https://github.com/groonga/groonga/commit/4830d2430ef4e17e188f2ab1a3cdc8b3fffe3659 Message: mrb: add Groonga::Table.find_column Modified files: lib/mrb/mrb_table.c Modified: lib/mrb/mrb_table.c (+22 -0) =================================================================== --- lib/mrb/mrb_table.c 2015-06-29 00:22:08 +0900 (87872fb) +++ lib/mrb/mrb_table.c 2015-06-29 00:22:48 +0900 (9dc4ee8) @@ -66,6 +66,25 @@ mrb_grn_table_array_reference(mrb_state *mrb, mrb_value self) } static mrb_value +mrb_grn_table_find_column(mrb_state *mrb, mrb_value self) +{ + grn_ctx *ctx = (grn_ctx *)mrb->ud; + grn_obj *table; + mrb_value mrb_column_name; + grn_obj *column; + + mrb_get_args(mrb, "o", &mrb_column_name); + + table = DATA_PTR(self); + column = grn_obj_column(ctx, table, + RSTRING_PTR(mrb_column_name), + RSTRING_LEN(mrb_column_name)); + grn_mrb_ctx_check(mrb); + + return grn_mrb_value_from_grn_obj(mrb, column); +} + +static mrb_value mrb_grn_table_is_locked(mrb_state *mrb, mrb_value self) { grn_ctx *ctx = (grn_ctx *)mrb->ud; @@ -311,6 +330,9 @@ grn_mrb_table_init(grn_ctx *ctx) mrb_define_method(mrb, klass, "[]", mrb_grn_table_array_reference, MRB_ARGS_REQ(1)); + mrb_define_method(mrb, klass, "find_column", + mrb_grn_table_find_column, MRB_ARGS_REQ(1)); + mrb_define_method(mrb, klass, "locked?", mrb_grn_table_is_locked, MRB_ARGS_NONE()); -------------- next part -------------- HTML����������������������������...Download