catalyst | |
ActionClass と併用すると動かないという話だったので修正した。簡単なテストしかしてないのがちょっと不安。
元記事にもあるように catamoose では MooseX::MethodAttributes を使っているので metamethod に attributes プロパティが定義されているが、これは is => 'ro' となっていて 呼び出し時に _build_attributes で固定される。今回のように動的に CODE ATTRIBUTES を追加する状況では、ここがよろしくなかったみたい。
結局どう対応したかというと、MooseX::MethodAttributes では metaclass も拡張されていて get_method_attributes が生えているので、これを使った。
なお ATTRIBUTES 登録に関しても register_method_attributes というメソッドが生えているが、本来 ATTRIBUTES は BEGIN フェーズで処理されるものなので、なんか挙動大丈夫なんだろうかと思って attributes.pm を使ったままにしてある。
SEE ALSO:
ibxgnbhtls2011/03/24 15:47QAtqdc <a href="http://bgdkfljqayrv.com/">bgdkfljqayrv</a>, [url=http://pooqizwkdvbl.com/]pooqizwkdvbl[/url], [link=http://utkremgdcoaz.com/]utkremgdcoaz[/link], http://yzlfesxjunck.com/