File Coverage

blib/lib/Data/Rx/TypeBundle/Rx.pm
Criterion Covered Total %
statement 25 25 100.0
branch 1 2 50.0
condition n/a
subroutine 9 9 100.0
pod 3 3 100.0
total 38 39 97.4


line stmt bran cond sub pod time code
1 1     1   90139 use strict;
  1         3  
  1         46  
2 1     1   7 use warnings;
  1         2  
  1         57  
3             package Data::Rx::TypeBundle::Rx;
4             BEGIN {
5 1     1   128 $Data::Rx::TypeBundle::Rx::VERSION = '0.103520';
6             }
7             # ABSTRACT: Build types from Data::Rx schema (experimental)
8              
9 1     1   14 use base 'Data::Rx::TypeBundle';
  1         2  
  1         166  
10              
11 1     1   682 use Data::Rx::Type::Rx;
  1         3  
  1         208  
12              
13              
14             sub new {
15 1     1 1 17 my ($class, $args) = @_;
16 1 50       5 $args->{type_plugins} = [] unless $args->{type_plugins};
17 1         5 my $self = { %$args };
18 1         6 bless $self, $class;
19             }
20              
21             sub _prefix_pairs {
22 1     1   43019 my $self = shift;
23 1         4 return ();
24             }
25              
26              
27             sub register_type {
28 1     1 1 8 my ($self, $type_uri, $as) = @_;
29              
30 1         2 push @{ $self->{type_plugins} }, Data::Rx::Type::Rx->new(
  1         17  
31             type_uri => $type_uri,
32             as => $as,
33             );
34             }
35              
36              
37             sub type_plugins {
38 1     1 1 10 my $self = shift;
39 1         3 return @{ $self->{type_plugins} };
  1         7  
40             }
41              
42              
43             1;
44              
45             __END__