On 6/7/06, ara.t.howard / noaa.gov <ara.t.howard / noaa.gov> wrote:
> whenever you wrap methods like this __always__, __always__, __always__ do this
>
>    alias_method "old_method", "method"
>
>    def method *a, &b
>      # ...
>      old_method *a, &b
>      # ...
>    end
>
> you need to collect any args and block and pass them through.
>
> regards.
>

Thanks for the tip.  Besides that, are there any other gotchas related
to redefining methods?  For instance, I'm redefining my_foo inside
module x, but y and z call my_foo before module x ever needs to get
loaded.  Does that mean that my_foo will be the old version for y and
z, then the new version for any callers after module x gets loaded?

- rob

-- 
http://www.robsanheim.com
http://www.seekingalpha.com
http://www.ajaxian.com