transfire / gmail.com schrieb:
> Also, keep in mind the differences between:
> 
>   methods
>   public_methods
>   private_methods
>   protected_methods
> 
>   instance_methods
>   public_instance_methods
>   private_instance_methods
>   protected_instance_methods
> 
> I've made a fool of myself more than once thinking the first combined
> the later three -- it does not.

Me too.

> methods is alias of public_methods and
> likewise for the instance version.

That's not quite correct. Kernel#methods and Module#instance_methods 
return both public and protected methods:

   class C
     public; def pub; end
     protected; def prot; end
     private; def priv; end
   end

   p C.instance_methods(false)  # => ["prot", "pub"]

Regards,
Pit