On 20.08.2010 03:03, Cnm Cnm wrote: > Just wonder is there any way to inject a bunch of code into an instance > method, just like how a module can be used as a mixin to a class? One thing you can do is alias the original and use it. class Foo def bar; puts 123; end end f = Foo.new f.bar class Foo alias _bar bar def bar puts "before" x = _bar puts "after" x end end f.bar I once did some meta programming to nicely declare before and after code but that code was never production ready. IIRC others did similar things. Kind regards robert -- remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/