[Groonga-commit] groonga/groonga at 0163886 [master] mruby: Move grn_accessor related codes in a new file

Back to archive index

wanabe null+****@clear*****
Sat Oct 12 00:37:05 JST 2013


wanabe	2013-10-12 00:37:05 +0900 (Sat, 12 Oct 2013)

  New Revision: 016388660322244e0edac0a1bb1d4e48e060ee0e
  https://github.com/groonga/groonga/commit/016388660322244e0edac0a1bb1d4e48e060ee0e

  Merged 83b4429: Merge pull request #118 from wanabe/mruby-accessor2

  Message:
    mruby: Move grn_accessor related codes in a new file

  Copied files:
    lib/mrb/mrb_accessor.c
      (from lib/mrb/mrb_obj.c)
    lib/mrb/mrb_accessor.h
      (from lib/mrb/mrb_obj.h)
  Modified files:
    lib/ctx_impl_mrb.c
    lib/mrb/mrb_expr.c
    lib/mrb/mrb_obj.c
    lib/mrb/mrb_obj.h
    lib/mrb/sources.am

  Modified: lib/ctx_impl_mrb.c (+2 -0)
===================================================================
--- lib/ctx_impl_mrb.c    2013-10-12 00:02:08 +0900 (a18a94c)
+++ lib/ctx_impl_mrb.c    2013-10-12 00:37:05 +0900 (11ada19)
@@ -21,6 +21,7 @@
 
 #include "mrb/mrb_obj.h"
 #include "mrb/mrb_expr.h"
+#include "mrb/mrb_accessor.h"
 
 #ifdef GRN_WITH_MRUBY
 static void
@@ -33,6 +34,7 @@ grn_ctx_impl_mrb_init_bindings(grn_ctx *ctx)
 
   grn_mrb_obj_init(ctx);
   grn_mrb_expr_init(ctx);
+  grn_mrb_accessor_init(ctx);
 }
 
 void

  Copied: lib/mrb/mrb_accessor.c (+2 -5) 93%
===================================================================
--- lib/mrb/mrb_obj.c    2013-10-12 00:02:08 +0900 (dca1ca5)
+++ lib/mrb/mrb_accessor.c    2013-10-12 00:37:05 +0900 (f1e99fa)
@@ -25,7 +25,7 @@
 #include <mruby/data.h>
 
 #include "../db.h"
-#include "mrb_obj.h"
+#include "mrb_accessor.h"
 
 static struct mrb_data_type mrb_grn_accessor_type = {
   "Groonga::Accessor",
@@ -68,15 +68,12 @@ mrb_grn_accessor_next(mrb_state *mrb, mrb_value self)
 }
 
 void
-grn_mrb_obj_init(grn_ctx *ctx)
+grn_mrb_accessor_init(grn_ctx *ctx)
 {
   mrb_state *mrb = ctx->impl->mrb.state;
   struct RClass *module = ctx->impl->mrb.module;
   struct RClass *klass;
 
-  klass = mrb_define_class_under(mrb, module, "Object", mrb->object_class);
-  MRB_SET_INSTANCE_TT(klass, MRB_TT_DATA);
-
   klass = mrb_define_class_under(mrb, module, "Accessor", mrb->object_class);
   MRB_SET_INSTANCE_TT(klass, MRB_TT_DATA);
   mrb_define_method(mrb, klass, "initialize", mrb_grn_accessor_initialize, MRB_ARGS_REQ(1));

  Copied: lib/mrb/mrb_accessor.h (+4 -4) 87%
===================================================================
--- lib/mrb/mrb_obj.h    2013-10-12 00:02:08 +0900 (e5183d4)
+++ lib/mrb/mrb_accessor.h    2013-10-12 00:37:05 +0900 (7aefc77)
@@ -16,8 +16,8 @@
   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 */
 
-#ifndef GRN_MRB_OBJ_H
-#define GRN_MRB_OBJ_H
+#ifndef GRN_MRB_ACCESSOR_H
+#define GRN_MRB_ACCESSOR_H
 
 #include "../ctx.h"
 #include "../db.h"
@@ -27,10 +27,10 @@ extern "C" {
 #endif
 
 mrb_value mrb_grn_accessor_new(mrb_state *mrb, grn_accessor *accessor);
-void grn_mrb_obj_init(grn_ctx *ctx);
+void grn_mrb_accessor_init(grn_ctx *ctx);
 
 #ifdef __cplusplus
 }
 #endif
 
-#endif /* GRN_MRB_OBJ_H */
+#endif /* GRN_MRB_ACCESSOR_H */

  Modified: lib/mrb/mrb_expr.c (+1 -1)
===================================================================
--- lib/mrb/mrb_expr.c    2013-10-12 00:02:08 +0900 (99a0a9f)
+++ lib/mrb/mrb_expr.c    2013-10-12 00:37:05 +0900 (29350a8)
@@ -27,7 +27,7 @@
 #include "../expr.h"
 #include "../util.h"
 #include "../mrb.h"
-#include "mrb_obj.h"
+#include "mrb_accessor.h"
 #include "mrb_expr.h"
 
 static struct mrb_data_type mrb_grn_scan_info_type = {

  Modified: lib/mrb/mrb_obj.c (+0 -48)
===================================================================
--- lib/mrb/mrb_obj.c    2013-10-12 00:02:08 +0900 (dca1ca5)
+++ lib/mrb/mrb_obj.c    2013-10-12 00:37:05 +0900 (a7f48d6)
@@ -21,52 +21,9 @@
 #ifdef GRN_WITH_MRUBY
 #include <mruby.h>
 #include <mruby/class.h>
-#include <mruby/variable.h>
-#include <mruby/data.h>
 
-#include "../db.h"
 #include "mrb_obj.h"
 
-static struct mrb_data_type mrb_grn_accessor_type = {
-  "Groonga::Accessor",
-  NULL
-};
-
-mrb_value
-mrb_grn_accessor_new(mrb_state *mrb, grn_accessor *accessor)
-{
-  grn_ctx *ctx = (grn_ctx *)mrb->ud;
-  struct RClass *module = ctx->impl->mrb.module;
-  struct RClass *klass;
-  mrb_value mrb_accessor_ptr;
-
-  mrb_accessor_ptr = mrb_cptr_value(mrb, accessor);
-  klass = mrb_class_ptr(mrb_const_get(mrb, mrb_obj_value(module),
-                                      mrb_intern(mrb, "Accessor")));
-  return mrb_obj_new(mrb, klass, 1, &mrb_accessor_ptr);
-}
-
-static mrb_value
-mrb_grn_accessor_initialize(mrb_state *mrb, mrb_value self)
-{
-  mrb_value mrb_accessor_ptr;
-
-  mrb_get_args(mrb, "o", &mrb_accessor_ptr);
-  DATA_TYPE(self) = &mrb_grn_accessor_type;
-  DATA_PTR(self) = mrb_cptr(mrb_accessor_ptr);
-  return self;
-}
-
-static mrb_value
-mrb_grn_accessor_next(mrb_state *mrb, mrb_value self)
-{
-  grn_accessor *accessor;
-
-  accessor = DATA_PTR(self);
-  if (!accessor->next) { return mrb_nil_value(); }
-  return mrb_cptr_value(mrb, accessor->next);
-}
-
 void
 grn_mrb_obj_init(grn_ctx *ctx)
 {
@@ -76,10 +33,5 @@ grn_mrb_obj_init(grn_ctx *ctx)
 
   klass = mrb_define_class_under(mrb, module, "Object", mrb->object_class);
   MRB_SET_INSTANCE_TT(klass, MRB_TT_DATA);
-
-  klass = mrb_define_class_under(mrb, module, "Accessor", mrb->object_class);
-  MRB_SET_INSTANCE_TT(klass, MRB_TT_DATA);
-  mrb_define_method(mrb, klass, "initialize", mrb_grn_accessor_initialize, MRB_ARGS_REQ(1));
-  mrb_define_method(mrb, klass, "next", mrb_grn_accessor_next, MRB_ARGS_NONE());
 }
 #endif

  Modified: lib/mrb/mrb_obj.h (+0 -2)
===================================================================
--- lib/mrb/mrb_obj.h    2013-10-12 00:02:08 +0900 (e5183d4)
+++ lib/mrb/mrb_obj.h    2013-10-12 00:37:05 +0900 (31d5324)
@@ -20,13 +20,11 @@
 #define GRN_MRB_OBJ_H
 
 #include "../ctx.h"
-#include "../db.h"
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-mrb_value mrb_grn_accessor_new(mrb_state *mrb, grn_accessor *accessor);
 void grn_mrb_obj_init(grn_ctx *ctx);
 
 #ifdef __cplusplus

  Modified: lib/mrb/sources.am (+2 -0)
===================================================================
--- lib/mrb/sources.am    2013-10-12 00:02:08 +0900 (daeeefb)
+++ lib/mrb/sources.am    2013-10-12 00:37:05 +0900 (f000430)
@@ -1,4 +1,6 @@
 libgrnmrb_la_SOURCES =				\
+	mrb_accessor.c				\
+	mrb_accessor.h				\
 	mrb_expr.c				\
 	mrb_expr.h				\
 	mrb_obj.c				\
-------------- next part --------------
HTML����������������������������...
Download 



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