Acme-Keyakizaka46

 view release on metacpan or  search on metacpan

MANIFEST  view on Meta::CPAN

44
45
46
47
48
49
50
51
52
53
54
55
56
57
lib/Acme/Keyakizaka46/SuzukaTomita.pm
lib/Acme/Keyakizaka46/YuiImaizumi.pm
lib/Acme/Keyakizaka46/YuiKobayashi.pm
lib/Acme/Keyakizaka46/YukaKageyama.pm
lib/Acme/Keyakizaka46/YurinaHirate.pm
lib/Acme/Keyakizaka46/YuukaSugai.pm
minil.toml
t/00_compile.t
t/01_team_members.t
t/02_nogizaka46.t
t/03_select.t
t/04_sort.t
META.yml
MANIFEST

README.md  view on Meta::CPAN

9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    my $keyaki = Acme::Keyakizaka46->new;
 
    # retrieve the members on their activities
    my @members              = $keyaki->team_members;             # retrieve all
    my @kanji_members        = $keyaki->team_members('kanji');
    my @hiragana_members     = $keyaki->team_members('hiragana');
 
    # retrieve the members under some conditions
    my @sorted_by_age        = $keyaki->sort('age', 'asc');
    my @sorted_by_class      = $keyaki->sort('class','desc');
    my @selected_by_age      = $keyaki->select('age', 18, '>=');
    my @selected_by_class    = $keyaki->select('class', 2, '==');
 
# DESCRIPTION
 
"Keyakizaka46" is a Japanese famous idol group.
This module, Acme::Keyakizaka46, provides an easy method to catch up
with Keyakizaka46.
 
# METHODS
 
## new

README.md  view on Meta::CPAN

53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
>     #  + class :  sort by class
>     #
>     # $order can be a one of the values below:
>     #  + desc                :  sort in descending order
>     #  + asc (anything else) :  sort in ascending order
>
>     my @sorted_members = $keyaki->sort('age','desc'); # sort by age in descending order
>
> Returns the members sorted by the _$type_ field.
 
## select ( $type, $number, $operator \[, @members\] )
 
>     # $type can be one of the same values above:
>     my @selected_members = $keyaki->select('age', 18, '>=');
>
> Returns the members satisfy the given _$type_ condition. _$operator_
> must be a one of '==', '>=', '<=', '>', and '<'. This method compares
> the given _$type_ to the member's one in the order below:
>
>     $number $operator $member_value
 
# SEE ALSO
 
- Keyakizaka46 (Official Site)

lib/Acme/Keyakizaka46.pm  view on Meta::CPAN

81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
    my ($self, $type, $order, @members) = @_;
    @members = $self->team_members() unless @members;
 
    if ($order eq 'desc') {
        return sort {$b->$type <=> $a->$type} @members;
    } else {
        return sort {$a->$type <=> $b->$type} @members;
    }
}
 
sub select {
    my ($self, $type, $num_or_str, $operator, @members) = @_;
 
    @members = $self->team_members() unless @members;
 
    if ($type eq 'center') {
        $self->_die('too many args...')
            if ($num_or_str || $operator);
 
        return grep {$_->{name_en} eq 'Yurina Hirate'} @members;
    }

lib/Acme/Keyakizaka46.pm  view on Meta::CPAN

143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
  my $keyaki = Acme::Keyakizaka46->new;
 
  # retrieve the members on their activities
  my @members              = $keyaki->team_members;             # retrieve all
  my @kanji_members        = $keyaki->team_members('kanji');
  my @hiragana_members     = $keyaki->team_members('hiragana');
 
  # retrieve the members under some conditions
  my @sorted_by_age        = $keyaki->sort('age', 'asc');
  my @sorted_by_class      = $keyaki->sort('class','desc');
  my @selected_by_age      = $keyaki->select('age', 18, '>=');
  my @selected_by_class    = $keyaki->select('class', 2, '==');
 
=head1 DESCRIPTION
 
"Keyakizaka46" is a Japanese famous idol group.
This module, Acme::Keyakizaka46, provides an easy method to catch up
with Keyakizaka46.
 
=head1 METHODS
 
=head2 new

lib/Acme/Keyakizaka46.pm  view on Meta::CPAN

199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
  # $order can be a one of the values below:
  #  + desc                :  sort in descending order
  #  + asc (anything else) :  sort in ascending order
 
  my @sorted_members = $keyaki->sort('age','desc'); # sort by age in descending order
 
Returns the members sorted by the I<$type> field.
 
=back
 
=head2 select ( $type, $number, $operator [, @members] )
 
=over 4
 
  # $type can be one of the same values above:
  my @selected_members = $keyaki->select('age', 18, '>=');
 
Returns the members satisfy the given I<$type> condition. I<$operator>
must be a one of '==', '>=', '<=', '>', and '<'. This method compares
the given I<$type> to the member's one in the order below:
 
  $number $operator $member_value
 
=back
 
=head1 SEE ALSO

t/03_select.t  view on Meta::CPAN

1
2
3
4
5
6
7
8
9
10
11
12
13
14
use strict;
use Test::More tests => 2;
 
my $keyaki  = Acme::Keyakizaka46->new;
 
my @neru = $keyaki->select('family_name_en', 'Nagahama', 'eq');
is $neru[0]->name_en, 'Neru Nagahama', "ねるを検索";
 
my @ab = $keyaki->select('blood_type', 'AB', 'eq');
is scalar @ab, 5, "AB型のメンバーは5人";
 
diag( $keyaki->select('center') ); # センター経験者はてちのみ



( run in 0.353 second using v1.01-cache-2.11-cpan-a9ef4e587e4 )