← Index
NYTProf Performance Profile   « line view »
For Makefile.PL
  Run on Sun Mar 1 16:04:44 2015
Reported on Sun Mar 1 16:09:02 2015

FilenameC:/tmp64ng/perl/lib/CPAN/Meta/Feature.pm
StatementsExecuted 10 statements in 0s
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
1110s0sCPAN::Meta::::BEGIN@1 CPAN::Meta::BEGIN@1
1110s0sCPAN::Meta::::BEGIN@2 CPAN::Meta::BEGIN@2
1110s0sCPAN::Meta::::BEGIN@3 CPAN::Meta::BEGIN@3
1110s0sCPAN::Meta::Feature::::BEGIN@7CPAN::Meta::Feature::BEGIN@7
0000s0sCPAN::Meta::Feature::::descriptionCPAN::Meta::Feature::description
0000s0sCPAN::Meta::Feature::::identifierCPAN::Meta::Feature::identifier
0000s0sCPAN::Meta::Feature::::newCPAN::Meta::Feature::new
0000s0sCPAN::Meta::Feature::::prereqsCPAN::Meta::Feature::prereqs
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
120s10s
# spent 0s within CPAN::Meta::BEGIN@1 which was called: # once (0s+0s) by CPAN::Meta::BEGIN@56 at line 1
use 5.006;
# spent 0s making 1 call to CPAN::Meta::BEGIN@1
220s20s
# spent 0s within CPAN::Meta::BEGIN@2 which was called: # once (0s+0s) by CPAN::Meta::BEGIN@56 at line 2
use strict;
# spent 0s making 1 call to CPAN::Meta::BEGIN@2 # spent 0s making 1 call to strict::import
320s20s
# spent 0s within CPAN::Meta::BEGIN@3 which was called: # once (0s+0s) by CPAN::Meta::BEGIN@56 at line 3
use warnings;
# spent 0s making 1 call to CPAN::Meta::BEGIN@3 # spent 0s making 1 call to warnings::import
4package CPAN::Meta::Feature;
5# VERSION
610s$CPAN::Meta::Feature::VERSION = '2.143240';
720s10s
# spent 0s within CPAN::Meta::Feature::BEGIN@7 which was called: # once (0s+0s) by CPAN::Meta::BEGIN@56 at line 7
use CPAN::Meta::Prereqs;
# spent 0s making 1 call to CPAN::Meta::Feature::BEGIN@7
8
9#pod =head1 DESCRIPTION
10#pod
11#pod A CPAN::Meta::Feature object describes an optional feature offered by a CPAN
12#pod distribution and specified in the distribution's F<META.json> (or F<META.yml>)
13#pod file.
14#pod
15#pod For the most part, this class will only be used when operating on the result of
16#pod the C<feature> or C<features> methods on a L<CPAN::Meta> object.
17#pod
18#pod =method new
19#pod
20#pod my $feature = CPAN::Meta::Feature->new( $identifier => \%spec );
21#pod
22#pod This returns a new Feature object. The C<%spec> argument to the constructor
23#pod should be the same as the value of the C<optional_feature> entry in the
24#pod distmeta. It must contain entries for C<description> and C<prereqs>.
25#pod
26#pod =cut
27
28sub new {
29 my ($class, $identifier, $spec) = @_;
30
31 my %guts = (
32 identifier => $identifier,
33 description => $spec->{description},
34 prereqs => CPAN::Meta::Prereqs->new($spec->{prereqs}),
35 );
36
37 bless \%guts => $class;
38}
39
40#pod =method identifier
41#pod
42#pod This method returns the feature's identifier.
43#pod
44#pod =cut
45
46sub identifier { $_[0]{identifier} }
47
48#pod =method description
49#pod
50#pod This method returns the feature's long description.
51#pod
52#pod =cut
53
54sub description { $_[0]{description} }
55
56#pod =method prereqs
57#pod
58#pod This method returns the feature's prerequisites as a L<CPAN::Meta::Prereqs>
59#pod object.
60#pod
61#pod =cut
62
63sub prereqs { $_[0]{prereqs} }
64
6510s1;
66
67# ABSTRACT: an optional feature provided by a CPAN distribution
68
69__END__