diff options
| author | Daniel Bovensiepen <[email protected]> | 2012-05-16 11:34:00 -0700 |
|---|---|---|
| committer | Daniel Bovensiepen <[email protected]> | 2012-05-16 11:34:00 -0700 |
| commit | 0cc8dcc0ee658eca9193a5611104f6d05cb958fd (patch) | |
| tree | 0c123371d208a692f80197c1b0babb631302442a /src/class.c | |
| parent | 3bec8b330c58a7ac9a73ed3689b1bd9cde389c16 (diff) | |
| parent | 25415302399055a566e4d55b6c165937943aa678 (diff) | |
| download | mruby-0cc8dcc0ee658eca9193a5611104f6d05cb958fd.tar.gz mruby-0cc8dcc0ee658eca9193a5611104f6d05cb958fd.zip | |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'src/class.c')
| -rw-r--r-- | src/class.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/class.c b/src/class.c index 7cb25f5c4..9bb924df0 100644 --- a/src/class.c +++ b/src/class.c @@ -578,6 +578,19 @@ mrb_define_class_method(mrb_state *mrb, struct RClass *c, const char *name, mrb_ mrb_define_method_id(mrb, c->c, mrb_intern(mrb, name), func, aspec); } +void +mrb_define_singleton_method(mrb_state *mrb, struct RObject *o, const char *name, mrb_func_t func, int aspec) +{ + mrb_define_method_id(mrb, mrb_singleton_class_ptr(mrb, o->c), mrb_intern(mrb, name), func, aspec); +} + +void +mrb_define_module_function(mrb_state *mrb, struct RClass *c, const char *name, mrb_func_t func, int aspec) +{ + mrb_define_class_method(mrb, c, name, func, aspec); + mrb_define_method(mrb, c, name, func, aspec); +} + struct RProc* mrb_method_search_vm(mrb_state *mrb, struct RClass **cp, mrb_sym mid) { |
