From f34d0ba3eb5e001c5949236764c74c47688ec578 Mon Sep 17 00:00:00 2001 From: naruse Date: Thu, 19 Jan 2017 09:34:30 +0000 Subject: More description about the protected attribute of a method git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- vm_method.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'vm_method.c') diff --git a/vm_method.c b/vm_method.c index f4ff7989f2..57b805406c 100644 --- a/vm_method.c +++ b/vm_method.c @@ -1669,6 +1669,15 @@ rb_mod_public(int argc, VALUE *argv, VALUE module) * defined methods to protected. With arguments, sets the named methods * to have protected visibility. * String arguments are converted to symbols. + * + * If a method has protected visibility, it is callable only where + * self of the context is the same as the method. + * (method definition or instance_eval). This behavior is different from + * Java's protected method. Usually private should be used. + * + * Note that a protected method is slow because it can't use inline cache. + * + * To show a private method on RDoc, use :doc: instead of this. */ static VALUE @@ -1696,6 +1705,8 @@ rb_mod_protected(int argc, VALUE *argv, VALUE module) * private :a * end * Mod.private_instance_methods #=> [:a, :c] + * + * Note that to show a private method on RDoc, use :doc:. */ static VALUE -- cgit v1.2.3