丁稚な日々

Rubyで遊んだ日々の記録。あくまで著者視点の私的な記録なので、正確さを求めないように。
Rubyと関係ない話題にはその旨注記しているはず。なので、一見関係無いように見える話題もどこかで関係あるのかもしれません。または、注記の書き忘れかもしれません...

[直前] [最新] [直後] [Top]

Mar.12,2009 (Thu)

Revision: 1.1 (Mar.13,2009 01:27)

using

_ 成瀬さんに教えてもらったIronRubyの記事を読んだ。
とりあえず、usingというメソッドを用意するのがいいんじゃないかと思った。
こんな感じで。

def self.using(mod)
  Object.const_set mod.name.split(/::/).last, mod
end

class Module
  def using(mod)
    self.const_set mod.name.split(/::/).last, mod
  end
end

if $0 == __FILE__
  module MyNameSpace
    using System::Console

    class Foo
      def foo
        Console.WriteLine("Hello, World!")
      end
    end
  end

  MyNameSpace::Foo.new.foo #=> "Hello, World!"
end

ついでに.NETアセンブリに対するrequireもこの中に押し込めば、よりC#チックに!

_ って、IronRuby開発陣がこの程度の考えてないわけはないから、まだ存在しないならばそれなりの理由があるんだろうね、きっと。


被捕捉アンテナ類
[Ant] [Antenna-Julia] [Rabbit's Antenna] [Ruby hotlinks]