From: Clifford Heath Date: 2008-02-06T14:54:56+09:00 Subject: Re: Pattern for "include"ing class methods? ara howard wrote: > module M > module ClassMethods > end > > module InstanceMethods > end > > def M.inherited other > other.send :extend, ClassMethods > other.send :include InstanceMethods > end > end Interesting idea, but it doesn't seem to work, and I don't see how it could (though I've mangled it into something different that does work). How and when should module M get used, and how does inherited get called? My look at the Ruby doc says the "inherited" callback only works on classes, not on modules...? Is this a 1.9 thing? If I change M to a class, then of course I can't use it as the argument to include or extend :-). What I *did* get to work was to add a method to class Module that does the include and extend. Which I guess I knew I could do anyhow... Clifford Heath.