From: Ross Bamford Date: 2006-03-21T02:35:22+09:00 Subject: Re: once again looking for my module methods On Mon, 2006-03-20 at 22:03 +0900, Trans wrote: > Gee. Once again I want my module methods inherited. As usual, I have a feeling the answer is 'no', but doesn't this take care of it (maybe with improved ignorance of callback methods)? module Foo def self.included(c) singleton_methods.reject { |e| e == 'included' }.each do |m| mod = self c.class_eval do (class << self; self; end).class_eval do define_method(m, &(mod.method(m))) end end end nil end def self.foo :foo end def self.bar(baz) baz end def joe :joe end end class Baz include Foo end p Baz.foo # => :foo p Baz.bar(:bar) # => :bar p Baz.new.joe # => :joe -- Ross Bamford - rosco@roscopeco.REMOVE.co.uk