File Coverage

blib/lib/exact/role.pm
Criterion Covered Total %
statement 28 28 100.0
branch 1 2 50.0
condition 2 3 66.6
subroutine 11 11 100.0
pod 5 5 100.0
total 47 49 95.9


line stmt bran cond sub pod time code
1             package exact::role;
2             # ABSTRACT: Simple role interface extension for exact
3              
4 6     6   687708 use 5.014;
  6         26  
5 6     6   605 use exact;
  6         55529  
  6         1079  
6 6     6   7695 use Import::Into;
  6         16  
  6         175  
7 6     6   28 use feature ();
  6         10  
  6         147  
8 6     6   1695 use Role::Tiny ();
  6         28310  
  6         3952  
9              
10             our $VERSION = '1.20'; # VERSION
11              
12             my ($perl_version) = $^V =~ /^v5\.(\d+)/;
13              
14             sub import {
15 9     9   4542 my ( $self, $params, $caller ) = @_;
16 9   66     73 $caller //= caller();
17              
18 9         47 Role::Tiny->import::into($caller);
19 9         4635 exact->import::into( $caller, 'class', 'noautoclean' );
20 9 50       1522 feature->unimport('class') if ( $perl_version > 36 );
21             }
22              
23             sub does_role {
24 2     2 1 268 Role::Tiny::does_role(@_);
25             }
26              
27             sub apply_roles_to_package {
28 1     1 1 796 shift;
29 1         4 Role::Tiny->apply_roles_to_package(@_);
30             }
31              
32             sub apply_roles_to_object {
33 1     1 1 864 shift;
34 1         4 Role::Tiny->apply_roles_to_object(@_);
35             }
36              
37             sub create_class_with_roles {
38 1     1 1 965 shift;
39 1         4 Role::Tiny->create_class_with_roles(@_);
40             }
41              
42             sub is_role {
43 3     3 1 1034 shift;
44 3         7 Role::Tiny->is_role(@_);
45             }
46              
47             1;
48              
49             __END__