File Coverage

blib/lib/Locale/TextDomain/OO/Plugin/Expand/BabelFish/Loc/DomainAndCategory.pm
Criterion Covered Total %
statement 15 43 34.8
branch 0 2 0.0
condition n/a
subroutine 5 18 27.7
pod 6 6 100.0
total 26 69 37.6


line stmt bran cond sub pod time code
1             package Locale::TextDomain::OO::Plugin::Expand::BabelFish::Loc::DomainAndCategory; ## no critic (TidyCode)
2            
3 1     1   5199 use strict;
  1         3  
  1         36  
4 1     1   7 use warnings;
  1         3  
  1         35  
5 1     1   7 use Locale::Utils::PlaceholderBabelFish;
  1         2  
  1         23  
6 1     1   5 use Moo::Role;
  1         3  
  1         10  
7            
8             our $VERSION = '1.030';
9            
10             with qw(
11             Locale::TextDomain::OO::Plugin::Expand::BabelFish::Loc
12             Locale::TextDomain::OO::Role::DomainAndCategory
13             );
14            
15             requires qw(
16             loc_b
17             loc_bp
18            
19             begin_c
20             begin_d
21             begin_dc
22             callback_scope
23             end_c
24             end_d
25             end_dc
26             );
27            
28             sub loc_bd {
29 0     0 1   my ( $self, $domain, @more ) = @_;
30            
31             return $self->callback_scope(
32             sub {
33 0     0     $self->begin_d($domain);
34 0           return $self->loc_b(@more);
35             },
36 0           );
37             }
38            
39             sub loc_bc {
40 0     0 1   my ($self, @more) = @_;
41            
42             return $self->callback_scope(
43             sub {
44 0     0     $self->begin_c( splice @more, 1, 1 );
45 0           return $self->loc_b(@more);
46             },
47 0           );
48             }
49            
50             sub loc_bdc {
51 0     0 1   my ( $self, $domain, @more ) = @_;
52            
53             return $self->callback_scope(
54             sub {
55 0     0     $self->begin_d($domain);
56 0           $self->begin_c( splice @more, 1, 1 );
57 0           return $self->loc_bc(@more);
58             },
59 0           );
60             }
61            
62             sub loc_bdp {
63 0     0 1   my ( $self, $domain, @more ) = @_;
64            
65             return $self->callback_scope(
66             sub {
67 0     0     $self->begin_d($domain);
68 0           return $self->loc_bp(@more);
69             },
70 0           );
71             }
72            
73             sub loc_bcp {
74 0     0 1   my ( $self, @more ) = @_;
75            
76             return $self->callback_scope(
77             sub {
78 0     0     $self->begin_c( splice @more, 2, 1 );
79 0           return $self->loc_bp(@more);
80             },
81 0           );
82             }
83            
84             sub loc_bdcp {
85 0     0 1   my ( $self, $domain, @more ) = @_;
86            
87             return $self->callback_scope(
88             sub {
89 0     0     $self->begin_d($domain);
90 0           $self->begin_c( splice @more, 2, 1 );
91 0           return $self->loc_bcp(@more);
92             },
93 0           );
94             }
95            
96             {
97 1     1   889 no warnings qw(redefine); ## no critic (NoWarnings)
  1         3  
  1         235  
98            
99             # Dummy methods for string marking.
100             my $dummy = sub {
101 0     0     my (undef, @more) = @_;
102 0 0         return wantarray ? @more : $more[0];
103             };
104            
105             *loc_begin_bc = \&begin_c;
106             *loc_begin_bd = \&begin_d;
107             *loc_begin_bdc = \&begin_dc;
108            
109             *loc_end_bc = \&end_c;
110             *loc_end_bd = \&end_d;
111             *loc_end_bdc = \&end_dc;
112            
113             *Nloc_bd = $dummy;
114             *Nloc_bdp = $dummy;
115            
116             *Nloc_bc = $dummy;
117             *Nloc_bcp = $dummy;
118            
119             *Nloc_bdc = $dummy;
120             *Nloc_bdcp = $dummy;
121             }
122            
123             1;
124            
125             __END__