この間はまったのでメモ
package MyObject; use Moose; use overload # overloadの色々... ; use namespace::clean;
これだと、overload.pmが適用してくれる関数も削除してしまうので、オーバーロードが効かない。なので、overloadを適用するMooseオブジェクトはこうやって書かないといけない:
package MyObject; use Moose; use overload ....; no Moose;
それだけ。

トラックバック(0)

このブログ記事に対するトラックバックURL: http://mt.endeworks.jp/cgi-bin/mt-tb.cgi/2409

コメント(1)

overload just injects methods with funny names, so it has to be done after the namespace::clean:

use Moose;

use blah;

use namespace::clean -except => "meta";

use overload ...;

コメントする

筆者

daisuke - a.k.a. "lestrrat", Perl hacker at Livedoor Inc, Japan Perl Association 代表理事

このブログ記事について

このページは、Dが2009年11月 6日 12:59に書いたブログ記事です。

ひとつ前のブログ記事は「AnyEvent IRC bot: Morris」です。

次のブログ記事は「巻いてないロールキャベツ。」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.1