File Coverage

blib/lib/Mite/Miteception.pm
Criterion Covered Total %
statement 29 37 78.3
branch 2 6 33.3
condition 2 3 66.6
subroutine 8 8 100.0
pod 0 1 0.0
total 41 55 74.5


line stmt bran cond sub pod time code
1 124     124   3740 use 5.010001;
  124         1308  
2 124     124   1910 use strict;
  124         1247  
  124         5352  
3 124     124   1545 use warnings;
  124         963  
  124         16985  
4              
5             package Mite::Miteception;
6              
7             our $AUTHORITY = 'cpan:TOBYINK';
8             our $VERSION = '0.012000';
9              
10 124     124   2343 use Import::Into;
  124         3779  
  124         7480  
11 124     124   59220 use Mite::Shim ();
  124         545  
  124         3366  
12 124     124   64996 use Mite::Types ();
  124         655  
  124         44661  
13              
14             sub import {
15 1650     1650   19448 'Mite::Types'->import::into( 1, qw( -types slurpy ) );
16              
17 1650 50 66     24025972 if ( Mite::Shim::_is_compiling() and defined $Mite::REAL_FILENAME ) {
18 0         0 my $class = shift;
19 0         0 my %arg = map { lc($_) => 1 } @_;
  0         0  
20 0         0 my ( $caller, $file ) = caller;
21 0         0 require Mite::Project;
22             Mite::Project->default->inject_mite_functions(
23             package => $caller,
24             file => $Mite::REAL_FILENAME,
25             arg => \%arg,
26 0 0       0 kind => ( $arg{'-role'} ? 'role' : 'class' ),
27             shim => 'Mite::Shim',
28             );
29             }
30             else {
31 1650         25708 goto \&load_mite_file;
32             }
33             }
34              
35             # Stolen bits from Mite::Shim
36             sub load_mite_file {
37 1650     1650 0 4398 my $class = shift;
38 1650         4209 my %arg = map { lc($_) => 1 } @_;
  2507         23751  
39              
40 1650         8700 my ( $caller, $file ) = caller;
41 1650         5085 my $mite_file = $file . ".mite.pm";
42              
43 1650 50       46756 if( !-e $mite_file ) {
44 0         0 require Carp;
45 0         0 Carp::croak("Compiled Mite file ($mite_file) for $file is missing");
46             }
47              
48             {
49 1650         5041 local @INC = ('.', @INC);
  1650         13388  
50 1650         857090 require $mite_file;
51             }
52             }
53              
54             1;