File Coverage

blib/lib/Alien/Ninja.pm
Criterion Covered Total %
statement 11 15 73.3
branch n/a
condition n/a
subroutine 4 7 57.1
pod 1 2 50.0
total 16 24 66.6


line stmt bran cond sub pod time code
1             package Alien::Ninja;
2              
3 1     1   380483 use strict;
  1         10  
  1         32  
4 1     1   5 use warnings;
  1         3  
  1         27  
5 1     1   5 use base qw( Alien::Base );
  1         2  
  1         599  
6 1     1   5162 use 5.008004;
  1         4  
7              
8             1;
9              
10             =head1 NAME
11              
12             Alien::Ninja - Find or build Ninja build tool
13              
14             =head1 SYNOPSIS
15              
16             Command line tool:
17              
18             use Alien::Ninja;
19             use Env qw( @PATH );
20              
21             unshift @PATH, Alien::Ninja->bin_dir;
22             system "@{[ Alien::Ninja->exe ]}";
23              
24             =head1 DESCRIPTION
25              
26             This distribution provides Ninja so that it can be used by other
27             Perl distributions that are on CPAN. It does this by first trying to
28             detect an existing install of Ninja on your system. If found it
29             will use that. If it cannot be found, the source code will be downloaded
30             from the internet and it will be installed in a private share location
31             for the use of other modules.
32              
33             =cut
34              
35             sub exe {
36 0     0 0   my($class) = @_;
37 0           $class->runtime_prop->{command};
38             }
39              
40             =head1 HELPERS
41              
42             =head2 ninja
43              
44             %{ninja}
45              
46             Returns 'ninja'.
47              
48             =cut
49              
50             sub alien_helper {
51             return +{
52             ninja => sub {
53 0     0     Alien::Ninja->exe;
54             },
55 0     0 1   };
56             }
57              
58              
59             =head1 SEE ALSO
60              
61             =over 4
62              
63             =item L
64              
65             Documentation on the Alien concept itself.
66              
67             =item L
68              
69             The base class for this Alien.
70              
71             =item L
72              
73             Detailed manual for users of Alien classes.
74              
75             =back
76              
77             =cut