驼鹿 - 确定是否已设置懒惰属性

时间:2014-03-07 07:17:37

标签: perl moose

我正在试图找出一种方法,看看我是否设置了一个懒惰的内置属性。我已经搜索了 Moose :: Meta :: Attribute Class :: MOP :: Attribute 的文档,并看到了get_value和{{ 1}}方法,但它们似乎不适合我。

has_value的文档说:

get_value

但是$ instance是什么?我尝试使用我的对象,但只返回错误:

  

“你必须传递一个包名,而且不能祝福......”

感谢任何帮助!

1 个答案:

答案 0 :(得分:6)

您可能需要的是对属性的谓词。 E.g。

has foo => (
  is        => 'rw',
  lazy      => 1,
  predicate => 'has_foo',
);