—package
Acme::BABYMETAL;
use
5.008001;
use
strict;
use
warnings;
our
$VERSION
=
"0.03"
;
my
@members
=
qw(SU-METAL YUIMETAL MOAMETAL)
;
sub
new {
my
$class
=
shift
;
my
$self
=
bless
{
members
=> []},
$class
;
for
my
$member
(
@members
) {
$member
=~ s|-|_|;
my
$module_name
=
'Acme::BABYMETAL::'
.
$member
;
eval
qq|require $module_name;|
;
push
@{
$self
->{members}},
$module_name
->new;
}
return
$self
;
}
sub
homepage {
my
(
$self
) =
@_
;
}
sub
youtube {
my
(
$self
) =
@_
;
}
sub
facebook {
my
(
$self
) =
@_
;
}
sub
instagram {
my
(
$self
) =
@_
;
}
sub
twitter {
my
(
$self
) =
@_
;
}
sub
members {
my
(
$self
,
$member
) =
@_
;
return
@{
$self
->{members}}
unless
$member
;
if
(
$member
=~ /^S/i ) {
@members
=
$self
->{members}[0];
}
elsif
(
$member
=~ /^Y/i ) {
@members
=
$self
->{members}[1];
}
elsif
(
$member
=~ /^M/i ) {
@members
=
$self
->{members}[2];
}
else
{
@members
= @{
$self
->{members}};
}
return
@members
;
}
sub
shout {
my
(
$self
) =
@_
;
"We are BABYMETAL DEATH!!\n"
;
}
1;
__END__
=encoding utf-8
=head1 NAME
Acme::BABYMETAL - All about Japanese metal idol unit "BABYMETAL"
=head1 SYNOPSIS
use Acme::BABYMETAL;
my $babymetal = Acme::BABYMETAL->new;
$babymetal->homepage;
$babymetal->youtube;
$babymetal->facebook;
$babymetal->instagram;
$babymetal->twitter;
my @members = $babymetal->members;
for my $member (@members) {
my $metal_name = $member->metal_name;
my $name_ja = $member->name_ja;
my $first_name_ja = $member->first_name_ja;
my $family_name_ja = $member->family_name_ja;
my $name_en = $member->name_en;
my $first_name_en = $member->first_name_en;
my $family_name_en = $member->family_name_en;
my $birthday = $member->birthday;
my $age = $member->age;
my $blood_type = $member->blood_type;
my $hometown = $member->hometown;
my $shout = $member->shout;
}
my ($su_metal) = $babymetal->members('SU-METAL');
my ($yuimetal) = $babymetal->members('YUIMETAL');
my ($moametal) = $babymetal->members('MOAMETAL');
$su_metal->shout; # SU-METAL DEATH!!
$yuimetal->shout; # YUIMETAL DEATH!!
$moametal->shout; # MOAMETAL DEATH!!
$babymetal->shout; # We are BABYMETAL DEATH!!
=head1 DESCRIPTION
BABYMETAL is a Japanese metal idol unit.
Acme::BABYMETAL provides an easy method to information of BABYMETAL.
=head1 LICENSE
Copyright (C) Hondallica.
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
=head1 AUTHOR
Hondallica E<lt>hondallica@gmail.comE<gt>
=cut