[Groonga-commit] groonga/groonga at 1c38f58 [master] mrb: add accessors to Groonga::TableGroupResult

Back to archive index

Kouhei Sutou null+****@clear*****
Mon Jun 29 15:20:19 JST 2015


Kouhei Sutou	2015-06-29 15:20:19 +0900 (Mon, 29 Jun 2015)

  New Revision: 1c38f580bbb6e8398ec552b6a569af9f85e13afb
  https://github.com/groonga/groonga/commit/1c38f580bbb6e8398ec552b6a569af9f85e13afb

  Message:
    mrb: add accessors to Groonga::TableGroupResult

  Modified files:
    lib/mrb/mrb_table_group_result.c

  Modified: lib/mrb/mrb_table_group_result.c (+144 -0)
===================================================================
--- lib/mrb/mrb_table_group_result.c    2015-06-29 14:59:44 +0900 (a58e7f8)
+++ lib/mrb/mrb_table_group_result.c    2015-06-29 15:20:19 +0900 (71910ce)
@@ -27,6 +27,8 @@
 #include <mruby/string.h>
 
 #include "mrb_ctx.h"
+#include "mrb_converter.h"
+#include "mrb_operator.h"
 #include "mrb_table_group_result.h"
 
 static void
@@ -81,6 +83,128 @@ mrb_grn_table_group_result_close(mrb_state *mrb, mrb_value self)
   return mrb_nil_value();
 }
 
+static mrb_value
+mrb_grn_table_group_result_get_table(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+
+  result = DATA_PTR(self);
+
+  return grn_mrb_value_from_grn_obj(mrb, result->table);
+}
+
+static mrb_value
+mrb_grn_table_group_result_set_table(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+  mrb_value mrb_table;
+
+  result = DATA_PTR(self);
+  mrb_get_args(mrb, "o", &mrb_table);
+
+  result->table = DATA_PTR(mrb_table);
+
+  return mrb_nil_value();
+}
+
+static mrb_value
+mrb_grn_table_group_result_set_key_begin(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+  mrb_int key_begin;
+
+  result = DATA_PTR(self);
+  mrb_get_args(mrb, "i", &key_begin);
+
+  result->key_begin = key_begin;
+
+  return mrb_nil_value();
+}
+
+static mrb_value
+mrb_grn_table_group_result_set_key_end(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+  mrb_int key_end;
+
+  result = DATA_PTR(self);
+  mrb_get_args(mrb, "i", &key_end);
+
+  result->key_end = key_end;
+
+  return mrb_nil_value();
+}
+
+static mrb_value
+mrb_grn_table_group_result_set_limit(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+  mrb_int limit;
+
+  result = DATA_PTR(self);
+  mrb_get_args(mrb, "i", &limit);
+
+  result->limit = limit;
+
+  return mrb_nil_value();
+}
+
+static mrb_value
+mrb_grn_table_group_result_set_flags(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+  mrb_int flags;
+
+  result = DATA_PTR(self);
+  mrb_get_args(mrb, "i", &flags);
+
+  result->flags = flags;
+
+  return mrb_nil_value();
+}
+
+static mrb_value
+mrb_grn_table_group_result_set_operator(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+  mrb_value mrb_operator;
+
+  result = DATA_PTR(self);
+  mrb_get_args(mrb, "o", &mrb_operator);
+
+  result->op = grn_mrb_value_to_operator(mrb, mrb_operator);
+
+  return mrb_nil_value();
+}
+
+static mrb_value
+mrb_grn_table_group_result_set_max_n_subrecs(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+  mrb_int max_n_subrecs;
+
+  result = DATA_PTR(self);
+  mrb_get_args(mrb, "i", &max_n_subrecs);
+
+  result->max_n_subrecs = max_n_subrecs;
+
+  return mrb_nil_value();
+}
+
+static mrb_value
+mrb_grn_table_group_result_set_calc_target(mrb_state *mrb, mrb_value self)
+{
+  grn_table_group_result *result;
+  mrb_value mrb_calc_target;
+
+  result = DATA_PTR(self);
+  mrb_get_args(mrb, "o", &mrb_calc_target);
+
+  result->calc_target = DATA_PTR(mrb_calc_target);
+
+  return mrb_nil_value();
+}
+
 void
 grn_mrb_table_group_result_init(grn_ctx *ctx)
 {
@@ -98,5 +222,25 @@ grn_mrb_table_group_result_init(grn_ctx *ctx)
 
   mrb_define_method(mrb, klass, "close",
                     mrb_grn_table_group_result_close, MRB_ARGS_NONE());
+
+  mrb_define_method(mrb, klass, "table",
+                    mrb_grn_table_group_result_get_table, MRB_ARGS_NONE());
+  mrb_define_method(mrb, klass, "table=",
+                    mrb_grn_table_group_result_set_table, MRB_ARGS_REQ(1));
+  mrb_define_method(mrb, klass, "key_begin=",
+                    mrb_grn_table_group_result_set_key_begin, MRB_ARGS_REQ(1));
+  mrb_define_method(mrb, klass, "key_end=",
+                    mrb_grn_table_group_result_set_key_end, MRB_ARGS_REQ(1));
+  mrb_define_method(mrb, klass, "limit=",
+                    mrb_grn_table_group_result_set_limit, MRB_ARGS_REQ(1));
+  mrb_define_method(mrb, klass, "flags=",
+                    mrb_grn_table_group_result_set_flags, MRB_ARGS_REQ(1));
+  mrb_define_method(mrb, klass, "operator=",
+                    mrb_grn_table_group_result_set_operator, MRB_ARGS_REQ(1));
+  mrb_define_method(mrb, klass, "max_n_subrecs=",
+                    mrb_grn_table_group_result_set_max_n_subrecs,
+                    MRB_ARGS_REQ(1));
+  mrb_define_method(mrb, klass, "calc_target=",
+                    mrb_grn_table_group_result_set_calc_target, MRB_ARGS_REQ(1));
 }
 #endif
-------------- next part --------------
HTML����������������������������...
Download 



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