2
Можно ли использовать мета атрибуты MooseX с Moops?Использовать мета атрибуты MooseX с Moops
Рассмотрим Муз пример кода:
use v5.14;
use strict;
use warnings;
package TraitTest;
use Moose;
with 'MooseX::Getopt';
has opt1 => (
traits => ['Getopt'],
is => 'ro',
isa => 'Bool',
cmd_aliases => ['o']
);
1;
package main;
print TraitTest->new_with_options()->opt1 ? "yes\n" : "no\n";
Я пытался превратить это Moops так: классы
use v5.14;
use strict;
use warnings;
use Moops;
class TraitTest
with MooseX::Getopt
{
has opt1 => (
# metaclass => 'Getopt', # also not working
traits => ['Getopt'],
is => 'ro',
isa => 'Bool',
cmd_aliases => ['o']
);
}
print TraitTest->new_with_options()->opt1 ? "yes\n" : "no\n";
Да, я читал об 'использовании Moose' в документации. Я подумал, что возможно использовать бэкэнд 'Moo', так как есть' MooX :: late'. Я бы очень хотел использовать 'Moo' вместе с' MooseX :: Getopt' - как вы думаете, было бы возможно его портировать? – sschober
Вы можете попробовать [MooX :: Options] (https://metacpan.org/pod/MooX::Options), который похож на (но не такой, как) MooseX :: Getopt, и работает с Moo. (До самого последнего выпуска Moops он не работал с Moops, но теперь он делает это.) – tobyink
Есть ли способ установить Moose как по умолчанию вместо Moo? –