Feature #13026

Updated by subtileos (Daniel Ferreira) almost 5 years ago


 I would like to propose the implementation of: 

 Object#public_singleton_methods Object#singleton_public_methods 

 `Object#public_singleton_methods` `Object#singleton_public_methods` should return a list of public singleton methods. 


 Currently `Object#singleton_methods` returns a list of public and protected singleton methods. 

 Currently the best way I know of retrieving a list of public singleton methods is: 

 foo = 
 foo.singleton_methods(false) & foo.public_methods(false) 

 I consider the definition of the public interface of any object very important. 
 For that reason I tend to keep it as simple as possible. 

 Also, the way I like to enforce the design is by using unit tests, testing the interface itself. 
 That way a change of the interface is very visible for the developer and code reviewer. 

 I also tend to use `protected` a lot to give private methods a higher level of relevance. 


 This is a feature that I would be very interested in developing. 
 It would be my first contribution to ruby core. 
 If you understand that it is worth the effort I would be more than happy to do it.