class BlankSlate

BasicObject provides an abstract base class with no predefined methods (except for _\send_ and _\id_). BlankSlate is useful as a base class when writing classes that depend upon method_missing (e.g. dynamic proxies).

Public Instance Methods

hide(name) click to toggle source

Hide the method named name in the BlankSlate class. Don't hide instance_eval or any method beginning with “__”.

According to 1.9.1 it should have only these methods:

  • #__send__

  • instance_eval

  • instance_exec

  • equal?

  • #==

  • #!

  • #!=

Seems to me it should have #__id__ too.

# File lib/more/facets/basicobject.rb, line 32
def hide(name)
  undef_method name if
    instance_methods.include?(name.to_s) and
    name !~ /^(__|instance_eval$|instance_exec$|equal\?$|\=\=$)/
end