Issue #8164 has been updated by EdwardCh (Edward Chen).


"Stuff" the private() method to take the explicit options.
A possible solution would be:
private (:instance => [], :class => [:foo])

In this way, although it adds a bit of complexity to the private and public methods, we would have reduced the method count of Module by 2 and simplified a class view => I can see all the pulic, private methods at a glance.
----------------------------------------
Feature #8164:  Public/Private
https://bugs.ruby-lang.org/issues/8164#change-37932

Author: Anonymous
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: 


 - #private<http://www.ruby-doc.org/core-1.9.3/Module.html#method-i-private>
    - #private_class_method<http://www.ruby-doc.org/core-1.9.3/Module.html#method-i-private_class_method>
    - #public<http://www.ruby-doc.org/core-1.9.3/Module.html#method-i-public>
    - #public_class_method<http://www.ruby-doc.org/core-1.9.3/Module.html#method-i-public_class_method>
 
 Would it be a good idea to compress these 4 methods to 2 methods?
 
 public - Can set both instance *and* class methods to public by passing
 them in as symbol
 private - Can set both instance *and* class methods to private by passing
 them in as symbol
 
 and enable them to be called at top of class? Is this a good idea? It would
 clean up Module# and encourage use of these two
 as methods rather than keywords


-- 
http://bugs.ruby-lang.org/