Kouhei Sutou
null+****@clear*****
Tue May 10 16:48:14 JST 2016
Kouhei Sutou 2016-05-10 16:48:14 +0900 (Tue, 10 May 2016) New Revision: e07ae4cd1f038c48a3954049bff474bcc0232b5f https://github.com/groonga/groonga/commit/e07ae4cd1f038c48a3954049bff474bcc0232b5f Message: mrb: add Groonga::Object#path Modified files: lib/mrb/mrb_object.c Modified: lib/mrb/mrb_object.c (+18 -0) =================================================================== --- lib/mrb/mrb_object.c 2016-05-10 16:31:02 +0900 (80d399f) +++ lib/mrb/mrb_object.c 2016-05-10 16:48:14 +0900 (10bd24a) @@ -87,6 +87,23 @@ object_get_name(mrb_state *mrb, mrb_value self) } static mrb_value +object_get_path(mrb_state *mrb, mrb_value self) +{ + grn_ctx *ctx = (grn_ctx *)mrb->ud; + grn_obj *object; + const char *path; + + object = DATA_PTR(self); + path = grn_obj_path(ctx, object); + + if (path) { + return mrb_str_new_cstr(mrb, path); + } else { + return mrb_nil_value(); + } +} + +static mrb_value object_grn_inspect(mrb_state *mrb, mrb_value self) { grn_ctx *ctx = (grn_ctx *)mrb->ud; @@ -253,6 +270,7 @@ grn_mrb_object_init(grn_ctx *ctx) mrb_define_method(mrb, klass, "id", object_get_id, MRB_ARGS_NONE()); mrb_define_method(mrb, klass, "name", object_get_name, MRB_ARGS_NONE()); + mrb_define_method(mrb, klass, "path", object_get_path, MRB_ARGS_NONE()); mrb_define_method(mrb, klass, "grn_inspect", object_grn_inspect, MRB_ARGS_NONE()); mrb_define_method(mrb, klass, "==", object_equal, MRB_ARGS_REQ(1)); -------------- next part -------------- HTML����������������������������...下载