[#33169] a cool Ruby script. — Yuji Asakawa <namu@...>

21 messages 2002/01/05

[#33229] ruby のインストールがうまくいかない — satoshi SAKAI <gau_sato@...9.dion.ne.jp>

はじめまして。

25 messages 2002/01/08
[#33230] Re: ruby のインストールがうまくいかない — shukaku@... 2002/01/08

At Tue, 8 Jan 2002 19:58:55 +0900,

[#33231] Re: ruby のインストールがうまくいかない — satoshi SAKAI <gau_sato@...9.dion.ne.jp> 2002/01/08

サカイです。

[#33233] Re: ruby のインストールがうまくいかない — nobu.nakada@... 2002/01/08

なかだです。

[#33254] Re: ruby のインストールがうまくいかない — satoshi SAKAI <gau_sato@...9.dion.ne.jp> 2002/01/09

サカイです。

[#33255] Re: ruby のインストールがうまくいかない — rubikitch <rubikitch@...> 2002/01/09

From: satoshi SAKAI <gau_sato@d9.dion.ne.jp>

[#33256] Re: ruby のインストールがうまくいかない — IWAOKA Masahiro <iwaoka@...> 2002/01/09

In the message <20020109102738.TQIO11600.femail11.im.home.ne.jp@witch>,

[#33235] " 差分ベースモジュール " in Ruby — Taku Nakajima <tnakajima@...>

中島@ブレーンです。

30 messages 2002/01/09
[#33238] Re: " 差分ベースモジュール " in Ruby — TADA Tadashi <sho@...> 2002/01/09

ただただしです。

[#33240] Re: " 差分ベースモジュール " in Ruby — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 2002/01/09

Toshです。

[#33241] Re: " 差分ベースモジュール " in Ruby — Tanaka Akira <akr@...17n.org> 2002/01/09

In article <A5EF3ECC-04BE-11D6-B67B-003065DC8B1C@yb3.so-net.ne.jp>,

[#33243] Re: " 差分ベースモジュール " in Ruby — Tanaka Akira <akr@...17n.org> 2002/01/09

In article <hvoell014rl.fsf@coulee.a02.aist.go.jp>,

[#33244] Re: " 差分ベースモジュール " in Ruby — matz@... (Yukihiro Matsumoto) 2002/01/09

まつもと ゆきひろです

[#33249] Re: " 差分ベースモジュール " in Ruby — Tanaka Akira <akr@...17n.org> 2002/01/09

In article <1010559765.279084.16212.nullmailer@ev.netlab.jp>,

[#33251] Re: " 差分ベースモジュール " in Ruby — matz@... (Yukihiro Matsumoto) 2002/01/09

まつもと ゆきひろです

[#33252] Re: " 差分ベースモジュール " in Ruby — Tanaka Akira <akr@...17n.org> 2002/01/09

In article <1010566232.053696.16272.nullmailer@ev.netlab.jp>,

[#33346] IPSocket.getaddress — "Sadayuki Sakamoto" <sakacom@...>

酒本です。

16 messages 2002/01/13

[#33416] No such file to load -- dbm — satoshi SAKAI <gau_sato@...9.dion.ne.jp>

サカイと言います。(以前もお世話になりました。)

13 messages 2002/01/17

[#33462] Re: Mysql/Ruby のコンパイル — "井上 浩一" <kyoui32@...>

井上です。

34 messages 2002/01/21
[#33463] Re: Mysql/Ruby のコンパイル — HIDAKA Takahiro <cv8t-hdk@...> 2002/01/21

 ひだかです。

[#33464] Re: Mysql/Ruby のコンパイル — nobu.nakada@... 2002/01/21

なかだです。

[#33465] Re: Mysql/Ruby のコンパイル — HIDAKA Takahiro <cv8t-hdk@...> 2002/01/21

 ひだかです。

[#33466] Re: Mysql/Ruby のコンパイル — nobu.nakada@... 2002/01/21

なかだです。

[#33467] Re: Mysql/Ruby のコンパイル — HIDAKA Takahiro <cv8t-hdk@...> 2002/01/21

 ひだかです。

[#33468] Re: Mysql/Ruby のコンパイル — nobu.nakada@... 2002/01/21

なかだです。

[#33471] Re: Mysql/Ruby のコンパイル — HIDAKA Takahiro <cv8t-hdk@...> 2002/01/22

 ひだかです。

[#33473] Re: Mysql/Ruby のコンパイル — nobu.nakada@... 2002/01/22

なかだです。

[#33474] Re: Mysql/Ruby のコンパイル — HIDAKA Takahiro <cv8t-hdk@...> 2002/01/22

 ひだかです。

[#33486] Re: Mysql/Ruby のコンパイル — "TAMURA.KENICHI" <sgs02516@...> 2002/01/22

たむらです。

[#33487] Re: Mysql/Ruby のコンパイル — nobu.nakada@... 2002/01/22

なかだです。

[#33488] Re: Mysql/Ruby のコンパイル — "TAMURA.KENICHI" <sgs02516@...> 2002/01/22

たむらです。

[#33477] about nest class — sheepman <sheepman@...>

こんにちは

21 messages 2002/01/22
[#33478] Re: about nest class — matz@... (Yukihiro Matsumoto) 2002/01/22

まつもと ゆきひろです

[#33517] [BUG] Can't compile ruby on Solaris2.6 — IWAMURO Motonori <iwa@...>

岩室です。

17 messages 2002/01/25
[#33518] Re: [BUG] Can't compile ruby on Solaris2.6 — matz@... (Yukihiro Matsumoto) 2002/01/25

まつもと ゆきひろです

[#33535] broken symbolic link and File::mtime — Go Nakagawa <nakagawa@...>

中川といいます。

37 messages 2002/01/25
[#33545] Re: broken symbolic link and File::mtime — matz@... (Yukihiro Matsumoto) 2002/01/25

まつもと ゆきひろです

[#33560] Re: broken symbolic link and File::mtime — Takahiro Kambe <taca@...> 2002/01/27

In message <1012002148.661980.9788.nullmailer@ev.netlab.jp>

[#33563] Re: broken symbolic link and File::mtime — Kazuhiro NISHIYAMA <zn@...> 2002/01/27

西山和広です。

[#33564] Re: broken symbolic link and File::mtime — Takahiro Kambe <taca@...> 2002/01/27

In message <20020127213735.2369.ZN@mbf.nifty.com>

[#33575] Re: broken symbolic link and File::mtime — Kazuhiro NISHIYAMA <zn@...> 2002/01/28

西山和広です。

[#33581] Re: broken symbolic link and File::mtime — matz@... (Yukihiro Matsumoto) 2002/01/28

まつもと ゆきひろです

[#33584] Re: broken symbolic link and File::mtime — Tanaka Akira <akr@...17n.org> 2002/01/28

In article <1012194192.456224.19148.nullmailer@ev.netlab.jp>,

[#33587] Re: broken symbolic link and File::mtime — matz@... (Yukihiro Matsumoto) 2002/01/28

まつもと ゆきひろです

[#33588] Re: broken symbolic link and File::mtime — Tanaka Akira <akr@...17n.org> 2002/01/28

In article <1012208486.646506.19793.nullmailer@ev.netlab.jp>,

[#33590] Re: broken symbolic link and File::mtime — matz@... (Yukihiro Matsumoto) 2002/01/28

まつもと ゆきひろです

[#33591] Re: broken symbolic link and File::mtime — Tanaka Akira <akr@...17n.org> 2002/01/28

In article <1012212090.162851.19949.nullmailer@ev.netlab.jp>,

[#33595] Re: broken symbolic link and File::mtime — matz@... (Yukihiro Matsumoto) 2002/01/28

まつもと ゆきひろです

[#33664] rd2 コマンド( RDtool )が動かない。 — Seiji Yoneda <yoneda@...>

米田と申します。はじめて投稿します。

24 messages 2002/01/30
[#33667] Re: rd2 コマンド( RDtool )が動かない。 — ARIMA Yasuhiro <fit0298@...> 2002/01/30

有馬です。

[ruby-list:33345] Re: [ 質問 ] クラスメソッドのモジュールによる実現方法

From: TAKAHASHI Masayoshi <maki@...>
Date: 2002-01-13 03:51:32 UTC
List: ruby-list #33345
高橋征義です。

解決した(?)ところでつっこむのも何ですが。

Hiroyuki Komatsu <komatsu@taiyaki.org> wrote:
> 結局コードは以下のようになりました. 

このコードだと、たとえば、

b1 = ClassB.new
p b1.actives    #=> nil
b1.activate
p b1.actives    #=> [#<ClassB:0x80fd8d0>]
b1.deactivate
p b1.actives    #=> []  ## nilではない?


……というような形になってしまいますけど、いいんでしょうか。
1.7ならハッシュのブロックつき初期化を使うと幸せになれるかも。


なお、別解としては、共通のクラスを作って、ClassAとClassBをその
サブクラスにする、という方法もあります。この場合、ClassAとClassB
のactivatesの情報は、クラス変数ではなく、クラスオブジェクトの
インスタンス変数に持たせることができます。

class Active
  def Active::actives
    @actives            ## これはActivateクラスのクラスオブジェクト
                        ## のインスタンス変数。
  end

  def actives
    self.class.actives
  end
  
  def activate
    actives().push(self)
  end
  def deactivate
    actives().delete(self)
  end

  # Do something
end

class ClassA < Active
  @actives = []      ## それぞれのクラスでインスタンス変数を
                     ## 定義するのがミソ。
  # Do something      
end

class ClassB < Active
  @actives = []
  # Do something
end

## test.
a1 = ClassA.new; a1.activate
a2 = ClassA.new; a2.activate

p a1.actives  #=> [#<ClassA:0x80fe17c>, #<ClassA:0x80fe0f0>]
a1.deactivate
p a1.actives  #=> [#<ClassA:0x80fe0f0>]

b1 = ClassB.new
p b1.actives  #=> []

b1.activate   #=> [#<ClassB:0x80fdf60>]
p b1.actives

b1.deactivate
p b1.actives  #=> []

b1.activate
p b1.actives  #=> [#<ClassB:0x80fdf60>]

b2 = ClassB.new
p b2.actives  #=> [#<ClassB:0x80fdf60>]

b2.activate
p ClassB::actives  #=> [#<ClassB:0x80fdf60>, #<ClassB:0x80fdc2c>]


ClassAとClassBに共通した、「(de-)activateできるもの」を表す
(抽象)クラスが想定できる場合は、こっちの方がいいかもしれません。
ご参考まで。

高橋征義 (TAKAHASHI Masayoshi)   E-mail: maki@rubycolor.org

In This Thread