File Coverage

blib/lib/Sub/HandlesVia/Toolkit/Moo.pm.mite.pm
Criterion Covered Total %
statement 28 35 80.0
branch 3 8 37.5
condition 1 9 11.1
subroutine 9 9 100.0
pod 0 2 0.0
total 41 63 65.0


line stmt bran cond sub pod time code
1             {
2              
3             package Sub::HandlesVia::Toolkit::Moo;
4 37     37   256 use strict;
  37         99  
  37         1109  
5 37     37   208 use warnings;
  37         77  
  37         1087  
6 37     37   232 no warnings qw( once void );
  37         86  
  37         4873  
7              
8             our $USES_MITE = "Mite::Class";
9             our $MITE_SHIM = "Sub::HandlesVia::Mite";
10             our $MITE_VERSION = "0.012000";
11              
12             # Mite keywords
13             BEGIN {
14 37     37   1011 my ( $SHIM, $CALLER ) =
15             ( "Sub::HandlesVia::Mite", "Sub::HandlesVia::Toolkit::Moo" );
16             ( *after, *around, *before, *extends, *has, *signature_for, *with ) =
17 37         83 do {
18              
19             package Sub::HandlesVia::Mite;
20 37     37   315 no warnings 'redefine';
  37         86  
  37         6992  
21             (
22 0         0 sub { $SHIM->HANDLE_after( $CALLER, "class", @_ ) },
23 0         0 sub { $SHIM->HANDLE_around( $CALLER, "class", @_ ) },
24 0         0 sub { $SHIM->HANDLE_before( $CALLER, "class", @_ ) },
25             sub { },
26 0         0 sub { $SHIM->HANDLE_has( $CALLER, has => @_ ) },
27 0         0 sub { $SHIM->HANDLE_signature_for( $CALLER, "class", @_ ) },
28 0         0 sub { $SHIM->HANDLE_with( $CALLER, @_ ) },
29 37         2244 );
30             };
31             }
32              
33             BEGIN {
34 37     37   18599 require Sub::HandlesVia::Toolkit;
35              
36 37     37   262 use mro 'c3';
  37         81  
  37         335  
37 37         127 our @ISA;
38 37         7904 push @ISA, "Sub::HandlesVia::Toolkit";
39             }
40              
41             # See UNIVERSAL
42             sub DOES {
43 703     703 0 2189 my ( $self, $role ) = @_;
44 703         1053 our %DOES;
45 703 50       1456 return $DOES{$role} if exists $DOES{$role};
46 703 50       1274 return 1 if $role eq __PACKAGE__;
47 703 50 0     1429 if ( $INC{'Moose/Util.pm'}
      33        
48             and my $meta = Moose::Util::find_meta( ref $self or $self ) )
49             {
50 0 0 0     0 $meta->can('does_role') and $meta->does_role($role) and return 1;
51             }
52 703         1753 return $self->SUPER::DOES($role);
53             }
54              
55             # Alias for Moose/Moo-compatibility
56             sub does {
57 703     703 0 213788 shift->DOES(@_);
58             }
59              
60             1;
61             }