File Coverage

blib/lib/MARC/Spec/Subspec.pm
Criterion Covered Total %
statement 9 9 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod 1 1 100.0
total 13 13 100.0


line stmt bran cond sub pod time code
1             package MARC::Spec::Subspec;
2              
3 13     13   179 use Moo;
  13         14  
  13         51  
4 13     13   2159 use namespace::clean;
  13         13  
  13         53  
5              
6             our $VERSION = '0.1.4';
7              
8             has left => (
9             is => 'rw',
10             isa => sub {
11             croak ('Left subterm is not an instance of MARC::Spec or MARC::Spec::Comparisonstring.')
12             unless(ref $_[0] eq 'MARC::Spec' or ref $_[0] eq 'MARC::Spec::Comparisonstring')
13             }
14             );
15              
16             has right => (
17             is => 'rw',
18             isa => sub {
19             croak ('Right subterm is not an instance of MARC::Spec or MARC::Spec::Comparisonstring.')
20             unless(ref $_[0] eq 'MARC::Spec' or ref $_[0] eq 'MARC::Spec::Comparisonstring')
21             }
22             );
23              
24             has operator => (
25             is => 'rw',
26             default => sub { "?" }
27             );
28              
29              
30             sub to_string {
31 4     4 1 4 my ($self) = @_;
32 4         54 my $string = $self->left->to_string().$self->operator.$self->right->to_string();
33 4         9 return $string;
34             }
35             1;
36              
37             __END__