[#4754] Now,I am starting ruby. — mamoru@... (Mamoru Matushita)

先日、初めて投稿したつもりだったのですが間違えて

14 messages 1997/10/02

[#4891] mixin - singleton method inheritance, const etc... — shugo@... (Shugo Maeda)

前田です。

13 messages 1997/10/10

[#5000] ruby 1.0-971015 released — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

14 messages 1997/10/15

[#5056] RubyでOODB — hisanori@...

松尾です。

20 messages 1997/10/20
[#5057] Re: RubyでOODB — matz@... (Yukihiro Matsumoto) 1997/10/20

まつもと ゆきひろです

[#5065] Re: RubyでOODB — hisanori@... 1997/10/20

松尾です。

[#5066] Re: RubyでOODB — matz@... (Yukihiro Matsumoto) 1997/10/20

まつもと ゆきひろです

[ruby-list:4955] Re: mixin - singleton method inheritance, const etc...

From: Shugo Maeda <shugo@...>
Date: 1997-10-14 05:21:07 UTC
List: ruby-list #4955
前田です。

> 前の方法でもそうなのですが、AttrInitMixinをインクルードしたクラスを
> サブクラスを作ると扱いが面倒ですね。ハッシュを共有しないと、スー
> パークラスのインスタンス変数の初期化さされませんし、共有するとスー
> パークラスの初期化でサブクラスのインスタンス変数まで初期化されて
> しまいますし...。

 ハッシュのハッシュを使う方法で、

  def initialize(*args)
    super
    (type.ancestors << type).each do |klass|
      ATTR_DEFAULTS[klass].each do |name, default|
        eval "@#{name} = default"
      end
    end
  end

みたいにすればよさそうですね。
# ancestorsってselfを含めることになったんでしたっけ?

---
前田 修吾



In This Thread