[Groonga-commit] groonga/groonga at 4830d24 [master] mrb: add Groonga::Table.find_column

Back to archive index

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 



More information about the Groonga-commit mailing list
Back to archive index