File Coverage

blib/lib/Data/Gimei/Word.pm
Criterion Covered Total %
statement 17 17 100.0
branch 2 2 100.0
condition 2 2 100.0
subroutine 6 6 100.0
pod 0 2 0.0
total 27 29 93.1


line stmt bran cond sub pod time code
1             package Data::Gimei::Word;
2              
3 6     6   98 use 5.010;
  6         21  
4 6     6   32 use strict;
  6         8  
  6         173  
5 6     6   23 use warnings;
  6         11  
  6         366  
6              
7 6         38 use Class::Tiny qw (
8             kanji
9             hiragana
10             katakana
11             romaji
12 6     6   53 );
  6         8  
13              
14             #
15             # Class methods
16             #
17              
18             sub BUILDARGS {
19 45     45 0 606464 my ( $class, $aref ) = @_;
20              
21 45         176 my %args = (
22             kanji => $aref->[0],
23             hiragana => $aref->[1],
24             katakana => $aref->[2],
25             );
26 45 100       135 $args{romaji} = ucfirst( $aref->[3] ) if ( $aref->[3] );
27              
28 45         130 return \%args;
29             }
30              
31             #
32             # Instance methods
33             #
34              
35             sub to_s {
36 6     6 0 13407 my $self = shift;
37              
38 6   100     186 return sprintf( "%s, %s, %s, %s",
39             $self->kanji, $self->hiragana, $self->katakana, $self->romaji // '' );
40             }
41             1;