我在Moose对象中有一堆懒惰的功能.
一些建筑商需要一些时间来完成.
我想nvoke所有构建器(转储“完整”对象).
我可以一次性构建所有延迟功能,还是必须手动调用每个功能以使其运行?
解决方法
如果你想要使用构建器具有“惰性”属性,但确保在新返回之前构造它们的值,通常要做的是在BUILD中调用访问器.
sub BUILD { my ($self) = @_; $self->foo; $self->bar; }
足以完成工作,但最好添加一条评论,并向那些不懂成语的人解释这个看似无用的代码.