さくです。

In article <20030124155036.GA4917 / magi.fakeroot.net>,
"Oliver M. Bolzer" <oliver / gol.com> writes:

> モジュールのincludeによって、クラスにクラスメソッドとクラス変数を追加す
> るにはどうするか、で悩んでます。

> 既存のクラスの機能を拡張するモジュールがFooで、Fooのincludeにより
> know_something?なクラスメソッドがFooに追加されるイメージです。

module Foo
  def know_something?; end
end

def Foo.append_features(mod)
#  super
  mod.extend self
end

ということかしらん。

class Bar; end

p Bar.respond_to? :know_something?     #=>false

class Bar; include Foo; end

p Bar.respond_to? :know_something?     #=>true

p Bar.new.respond_to? :know_something? #=>true (superあり)
p Bar.new.respond_to? :know_something? #=>false (superなし)

-- 
OZAWA Sakuro                   "Quidquid latine dictum sit, altum videtur."

Mail: mailto:crouton / weatherlight.org       GnuPG: 1C1A 4C26 32E2 A911 7B62
 Web: http://www.weatherlight.org/~crouton/        E194 37C0 8725 F1D8 F388