From: Jano Svitok Date: 2007-05-30T17:37:31+09:00 Subject: Re: alias_method code snippet doubt. On 5/30/07, Googy wrote: > module Mod > alias_method :orig_exit, :exit > def exit(code=0) > puts "Exiting with code #{code}" > orig_exit(code) > end > end > include Mod > exit(99) > > > > Above snippet we are creating new alias (orig_exit) for already > existing method exit. Interesting thing is orig_exit is again called > in exit method, why won't this behavior cause recursive calling of > method it self since orig_exit is simply alias to exit method ? This is a pattern how to preserve original method that you want to override. Alias stores the method as it was when alias was called. When you override the method, the alias stil points to the old version -- that's the point of this construct. J.