File Coverage

blib/lib/KiokuDB/TypeMap/Default/JSON.pm
Criterion Covered Total %
statement 10 10 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod 0 1 0.0
total 14 15 93.3


line stmt bran cond sub pod time code
1             #!/usr/bin/perl
2              
3             package KiokuDB::TypeMap::Default::JSON;
4 7     7   1483 use Moose;
  7         10  
  7         43  
5              
6 7     7   34309 use namespace::clean -except => 'meta';
  7         12  
  7         62  
7              
8             extends qw(KiokuDB::TypeMap);
9              
10             with 'KiokuDB::TypeMap::Default::Canonical' => {
11             excludes => [qw(reftype_entries)],
12             };
13              
14             has json_boolean_typemap => (
15             traits => [qw(KiokuDB::TypeMap)],
16             does => "KiokuDB::Role::TypeMap",
17             is => "ro",
18             lazy_build => 1,
19             );
20              
21             sub reftype_entries {
22 17     17 0 31 my $self = shift;
23              
24             return (
25 17         122 $self->KiokuDB::TypeMap::Default::Canonical::reftype_entries,
26             SCALAR => "KiokuDB::TypeMap::Entry::JSON::Scalar",
27             REF => "KiokuDB::TypeMap::Entry::JSON::Scalar",
28             );
29             }
30              
31             sub _build_json_boolean_typemap {
32 17     17   1289 my $self = shift;
33              
34 17         126 $self->_create_typemap(
35             isa_entries => {
36             'JSON::Boolean' => {
37             type => "KiokuDB::TypeMap::Entry::Passthrough",
38             intrinsic => 1,
39             },
40             },
41             );
42             }
43              
44             __PACKAGE__->meta->make_immutable;
45              
46             __PACKAGE__
47              
48             __END__