在Moose子例程中,$meta如何进入@_?
Chromatic 最近的博客让我很好奇关于 Moose 子例程has。我正在查看 Moose 源代码,注意到在 has 子例程中,有一个从 @_ 解压出来的 $meta 变量。 $met…
Moose只读属性特征以及如何设置它们?
如何设置 Moose 只读属性特征? package AttrTrait use Moose::Role has 'ext' => ( isa => 'Str', is => 'ro' ) package Class has 'foo' =>…
使用带有 CODE 引用的 Apache::Session 存储 Moose 对象的替代方案
我有一个 Moose 类,我想使用 Apache::Session::File 来存储它。 但是,Apache::Session::File 默认情况下不会存储它,而是收到错误消息: (in cleanu…
mod_perl2 moose 应用程序的数据库连接过多
我有一个基于 mod_perl2 的 Web 应用程序,需要连接到 mysql 数据库。我已经在驼鹿角色中实现了 SQL 连接细节。 简化后,该角色如下所示: package Pr…
Perl Moose::Util::TypeConstraints 错误?关于名称具有无效字符的错误是什么?
我跟踪 Moose::Util::TypeConstraints 异常已经好几个小时了,我不明白它在哪里检查类型并告诉我名称不正确。我将错误跟踪到一个简化的示例以尝试找到…
如何让 Moose 返回子类实例而不是它自己的类,以实现多态性
我想创建一个泛型类,其构建器不会返回该泛型类的实例,而是返回专用子类的实例。 由于 Moose 会自动构建对象,所以我不明白这是否可能,以及如何使用…
Perl OO 框架和程序设计 - Moose 和 Conway 的由内而外对象(Class::Std)
这更多的是一个用例类型的问题......但也足够通用,可以更广泛地适用: 简而言之,我正在开发一个或多或少是命令行包装器的模块;自然是OO。在不涉及…
如何在运行时将现有的 Moose 角色组合成一个类?
假设我定义了一个抽象 My::Object 和具体角色实现 My::Object::TypeA 和 My::Object::TypeB。出于可维护性的原因,我不希望有一个查看对象类型并应用…
如何将 Moose 与 Test::Class 一起使用?
我目前正在重构由同事构建的测试套件,并希望在此过程中使用 Test::Class[::Most] 。当我开始时,我发现我真的可以使用几个 Moose 角色来稍微解耦代码…
Moose::Error::Croak 错误报告不是从调用者的角度来看的
我最近刚刚开始使用 Moose,它是一个很棒的 OO 框架,不仅可以使用,还可以学习新的 OO 概念。我想做的一件事是在对象创建期间从调用者的角度进行错误…
当 Moose 中的基础属性发生更改时重建延迟构建的属性
我有一个带有 lazy_build 属性的 Moose 类。该属性的值是另一个(非惰性)属性的函数。 假设有人用所需属性的值 42 来实例化该类。然后他们请求了lazy…
有没有一种简单的方法来测试 Moose 属性是否是只读的?
我目前使用块 eval 来测试我是否已将属性设置为只读。有没有更简单的方法来做到这一点? 工作代码示例: #Test that sample_for is ready only eval {…
我可以使用基于 Moose 的对象将正则表达式传递给 isa() 吗?
我可以在 Moose 中使用 isa 并以正则表达式作为参数吗?如果不可能,我可以使用 ->isa 以外的其他方法实现相同的效果吗? 好的,有以下类型 Animal:…