Skip to content

Instantly share code, notes, and snippets.

@valachi
Created February 7, 2013 13:25
Show Gist options
  • Select an option

  • Save valachi/4730881 to your computer and use it in GitHub Desktop.

Select an option

Save valachi/4730881 to your computer and use it in GitHub Desktop.
class Man
def self.setup
puts caller.inspect
puts 'im a man'
end
end
class Woman
def self.setup_man
Man.setup
end
end
class << Man
puts instance_methods.inspect
instance_methods.each do |method_name|
original_method = instance_method(method_name)
undef_method(method_name)
define_method(method_name) { puts caller.inspect; send original_method }
end
end
Woman.setup_man
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment