groovy1.1-beta2がリリースだそうで
わたくしのグルに教えていただいたんですがruby(つかrails)がconfigでyamlに走る(rakeは別として)なかgroovyでは(ということはgrailsも)こんな方向に行くのですね。個人的にはこういう内部DSLっぽいほうが好みなんだけど。ruby(つかrails)でもこんなふうにかけたらもっとかっこええのに。
↑こちらを参考に。で、カンタンにrubyでこんなことやるにはこんなん?
def template(&b) X.new(b) if block end class X def initialize(&block) @pa = Hash.new begin instance_eval(&block) ensure @pa end end def method_missing(func, arg=nil) add(func, arg) end private def add(name, val) @pa[name] = val end end
とか書いて
template{ name("gagaga") address("fofofo") memo("dedededede") }
あ。子どものblock拾わんと。けどちょっと考え始めたら何週遅れかのタモリ倶楽部がはじまったのでまた今度。