Acme-PrettyCure
view release on metacpan or search on metacpan
lib/Acme/PrettyCure/CureDream.pm view on Meta::CPAN
sub age {14}
sub challenge { '大ããªã叿ã®åããã¥ã¢ããªã¼ã !' }
after 'transform' => sub {
my ($self, @buddies) = @_;
for my $buddy (@buddies) {
$buddy->transform;
}
$self->say("叿ã®åã¨ãæªæ¥ã®å
");
$self->say("è¯éºã«ç¾½ã°ããäºã¤ã®å¿!");
$self->say("Yes! ããªãã¥ã¢5!");
};
no Any::Moose;
__PACKAGE__->meta->make_immutable;
1;
lib/Acme/PrettyCure/Role.pm view on Meta::CPAN
package Acme::PrettyCure::Role;
use utf8;
use Any::Moose '::Role';
use Encode;
requires qw(human_name precure_name challenge);
has 'is_precure' => (is => 'rw', isa => 'Bool', default => sub { 0 });
sub say {
my ($self, $text) = @_;
print encode_utf8("$text\n");
}
sub name {
my $self = shift;
return $self->is_precure ? $self->precure_name : $self->human_name;
}
sub transform {
my ($self, $buddy) = @_;
die "already transformed" if $self->is_precure;
$self->is_precure(1);
if ($buddy && !$buddy->is_precure) {
$self->say($_) for $self->challenge;
} elsif (!$buddy) {
$self->say($_) for $self->challenge;
}
return $self;
}
1;
( run in 0.975 second using v1.01-cache-2.11-cpan-a1f116cd669 )