box-o-sand/why/metaid/metaid.rb
Dan Buch e1a07fadd9 Working through an old @why post on metaprogramming
since I'd like to make the JRuby rabbitmq stuff a bit less boilerplate.
2012-12-02 20:21:14 -05:00

20 lines
309 B
Ruby

class Object
def metaclass
class << self
self
end
end
def meta_eval(&block)
metaclass.instance_eval(&block)
end
def meta_def(name, &block)
meta_eval { define_method(name, &block) }
end
def class_def(name, &block)
class_eval { define_method(name, &block) }
end
end