moose

    1熱度

    1回答

    我是一個新的Perl。我試圖定義以下方式/使用類: package A::B::C; use strict; use warnings; use Moose; use aliased 'A::B::D'; has 'attribute' => (isa => 'ArrayRef[D]', is => 'ro', required => 1); 在創建一個對象: use aliased

    0熱度

    1回答

    這個問題成功以下問題:Moose: Array of Objects->loop through Attribute 我竭力要實現grep的語法爲列表::比較對象: my @aIdentList=("z003","t302","p032"); my $lc=List::Compare->new('-u',\@aIdentList,\@{(grep {$_->Identifier}@aArray1

    4熱度

    1回答

    由於mentioned earlier today,我試圖設置屬性的一個實例時,其中一個方法被調用。我也想讓這個屬性保密。正如我已經指出的那樣,我不能將該屬性設置爲ro,因爲這也禁止從課程內部讀取訪問。因此我現在將其設置爲rw,但我已經開始使用MooseX::Privacy模塊。因此,我的屬性聲明看起來是這樣的: has 'grow_params' => ( is => 'rw',

    2熱度

    1回答

    屬性名在穆斯寫入/讀取器,我們可以把例如限制屬性或添加getter/setter方法,像這樣: has 'color' => ( is => 'rw', isa => 'Str', writer => '_set_color', ); 我的問題是,有沒有辦法做到這一點的動態一組元素?這是可以做到這樣的事情: has ['color', 'temperature',

    -5熱度

    1回答

    我需要對這一個班輪的解釋。這只是調用set()方法嗎?或者是其他東西? 感謝您的幫助! has 'shape' => (is => 'rw'); 的目的是使用MooseX :: FollowPBP。

    1熱度

    1回答

    我有一個名爲aTestCaseList的數組,它被初始化並填充了類型爲「Testcase」的(Moose)對象。正如所料,我可以打印出aTestCaseList中每個Testcase對象的屬性TestName。但是,當我試圖找到名爲「TEST4」列表中的第一個對象使用https://perldoc.perl.org/List/Util.html#first我收到以下錯誤 不能調用方法「測試名」未定

    3熱度

    1回答

    我想實現簡單的方法鏈接,因爲該方法必須返回對象。由於我的代碼已經使用了Moose,未來的類幾乎爲空,並且只返回一個具有另一個類的實例的屬性,因此我決定使用Moose::Meta::Class(即Class::MOP::Class的子類)以編程方式生成它們。第一次與駝鹿元類的工作,所以我寫了一個簡單的代碼來嘗試: package Cat; use Moose; package Generat

    3熱度

    1回答

    我使用Moose :: Meta :: Class動態添加類,方法和屬性。 有人可以解釋爲什麼這代碼工作(內部調用generate()子程序,裏面Cat類):輸出的 package Cat; use Moose; sub generate { my $siberian = Moose::Meta::Class->create('Siberian'); $siberia

    2熱度

    1回答

    我試圖添加到Class1Resource1屬性值爲test。 但它不起作用。我的代碼有什麼問題? package Class1; use Moose; sub AUTOLOAD { my $self = shift; our $AUTOLOAD; my $unknown_method_name = (split(/::/, $AUTOLOAD))[-1];

    2熱度

    1回答

    我試圖用Perl和Moose創建抽象方法模式。我不明白的是,如果我覆蓋抽象類中的方法,它最終將被調用。爲什麼會這樣,並且有沒有辦法避免超類被調用? 主要 package main; use AbstractSort; use OrderedSort; # Sub class test my $ordered = OrderedSort->new(array => [1, -1, 23,