ClassX::Declare

東京Ruby会議01で高井さんにどうよといわれたやつ。


http://github.com/walf443/classx/tree/28f1694a54968cb56c674fe62a6f2b6ad35a46b9/lib/classx/declare.rb

↑のやつには使うとどんな風にできるかの説明がなかったので書いておきます。

http://gist.github.com/6541

# with ClassX::Declare
# cool!! thanks Naoto Takai
 
require 'classx'
require 'classx/declare'
include ClassX::Declare
  
classx "Hoge" do
 has :x
end
 
Hoge.new(:x => 0)
  #=> #<Hoge:0x111a7dc @__attribute_of={"x"=><#ClassX::Attribute {}:8966980 @data=0 >}>

個人的には普通に書いてもいいような気もしつつ、何回もclass書くのがたるいという意見もそうかもなぁと思ったので、defaultでは有効になりませんが、オプションで使いたい人はつかえばいいよという方針で入れてみました。