[#40551] Net::IMAPで既に存在するディレクトリが削除できない — 内木場 美次 <uchikoba@...>

お疲れ様です。内木場です。

13 messages 2005/01/21

[#40580] enum 定数する場合のイディオム — Hiroshi Takagi <gollum@...>

高木@関西のネットワーク屋%Ruby novice monk です。

12 messages 2005/01/27

[ruby-list:40591] Re: enum 定数する場合のイディオム

From: Shin-ichiro HARA <sinara@...>
Date: 2005-01-28 09:21:44 UTC
List: ruby-list #40591
原です。

裏技の類になりますが、Module というのは自分の名前を知っている
特殊なオブジェクトで、

  class HogeHo
    Const1, Const2, Const3 = (0..2).map{Module.new}
    p Const1 #=> HogeHo::Const1
  end

となって便利なこともあります。(前に話題になったことある。)

更に悪のりですが、

  def enum
    e = Proc.new
    e.call((0...e.arity).map{Module.new})
  end
  
  class HogeHi
    enum do
      |Const1, Const2, Const3|
    end
    p Const1 #=> HogeHi::Const1
  end

とかやってみると出来るみたいですね。


In This Thread

Prev Next