mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
Merge pull request #6510 from dearblue/visibility
Fixed class method visibility via `module_function`
This commit is contained in:
+1
-1
@@ -2789,7 +2789,7 @@ mrb_mod_module_function(mrb_state *mrb, mrb_value mod)
|
||||
mrb_method_t m = mrb_method_search(mrb, rclass, mid);
|
||||
|
||||
prepare_singleton_class(mrb, (struct RBasic*)rclass);
|
||||
MRB_METHOD_SET_VISIBILITY(m, MT_PRIVATE);
|
||||
MRB_METHOD_SET_VISIBILITY(m, MT_PUBLIC);
|
||||
mrb_define_method_raw(mrb, rclass->c, mid, m);
|
||||
mrb_gc_arena_restore(mrb, ai);
|
||||
}
|
||||
|
||||
@@ -838,6 +838,9 @@ assert('Module#module_function') do
|
||||
end
|
||||
|
||||
assert_true M.respond_to?(:modfunc)
|
||||
assert_equal nil do
|
||||
M.modfunc
|
||||
end
|
||||
end
|
||||
|
||||
assert('module with non-class/module outer raises TypeError') do
|
||||
|
||||
Reference in New Issue
Block a user