ClassX::Declare
東京Ruby会議01で高井さんにどうよといわれたやつ。
http://github.com/walf443/classx/tree/28f1694a54968cb56c674fe62a6f2b6ad35a46b9/lib/classx/declare.rb
↑のやつには使うとどんな風にできるかの説明がなかったので書いておきます。
# 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では有効になりませんが、オプションで使いたい人はつかえばいいよという方針で入れてみました。