← Index
NYTProf Performance Profile   « block view • line view • sub view »
For mentat.storage.mongo.pl
  Run on Tue Jun 24 10:04:38 2014
Reported on Tue Jun 24 10:05:05 2014

Filename/usr/local/lib/perl/5.14.2/Params/Validate.pm
StatementsExecuted 30 statements in 524µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
111811µs5.02msParams::Validate::::BEGIN@12Params::Validate::BEGIN@12
111261µs355µsParams::Validate::::BEGIN@13Params::Validate::BEGIN@13
11121µs21µsParams::Validate::::BEGIN@6Params::Validate::BEGIN@6
11115µs31µsParams::Validate::::BEGIN@11Params::Validate::BEGIN@11
1117µs44µsParams::Validate::::BEGIN@15Params::Validate::BEGIN@15
1117µs9µsParams::Validate::::BEGIN@8Params::Validate::BEGIN@8
1116µs11µsParams::Validate::::BEGIN@9Params::Validate::BEGIN@9
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Params::Validate;
2{
321µs $Params::Validate::VERSION = '1.08';
4}
5
6243µs121µs
# spent 21µs within Params::Validate::BEGIN@6 which was called: # once (21µs+0s) by DateTime::Duration::BEGIN@12 at line 6
use 5.008001;
# spent 21µs making 1 call to Params::Validate::BEGIN@6
7
8219µs212µs
# spent 9µs (7+3) within Params::Validate::BEGIN@8 which was called: # once (7µs+3µs) by DateTime::Duration::BEGIN@12 at line 8
use strict;
# spent 9µs making 1 call to Params::Validate::BEGIN@8 # spent 3µs making 1 call to strict::import
9219µs215µs
# spent 11µs (6+4) within Params::Validate::BEGIN@9 which was called: # once (6µs+4µs) by DateTime::Duration::BEGIN@12 at line 9
use warnings;
# spent 11µs making 1 call to Params::Validate::BEGIN@9 # spent 4µs making 1 call to warnings::import
10
11222µs247µs
# spent 31µs (15+16) within Params::Validate::BEGIN@11 which was called: # once (15µs+16µs) by DateTime::Duration::BEGIN@12 at line 11
use Exporter;
# spent 31µs making 1 call to Params::Validate::BEGIN@11 # spent 16µs making 1 call to Exporter::import
122113µs15.02ms
# spent 5.02ms (811µs+4.21) within Params::Validate::BEGIN@12 which was called: # once (811µs+4.21ms) by DateTime::Duration::BEGIN@12 at line 12
use Module::Implementation;
# spent 5.02ms making 1 call to Params::Validate::BEGIN@12
132118µs2421µs
# spent 355µs (261+94) within Params::Validate::BEGIN@13 which was called: # once (261µs+94µs) by DateTime::Duration::BEGIN@12 at line 13
use Params::Validate::Constants;
# spent 355µs making 1 call to Params::Validate::BEGIN@13 # spent 66µs making 1 call to Exporter::import
14
152149µs281µs
# spent 44µs (7+37) within Params::Validate::BEGIN@15 which was called: # once (7µs+37µs) by DateTime::Duration::BEGIN@12 at line 15
use vars qw( $NO_VALIDATION %OPTIONS $options );
# spent 44µs making 1 call to Params::Validate::BEGIN@15 # spent 37µs making 1 call to vars::import
16
1715µsour @ISA = 'Exporter';
18
1913µsmy %tags = (
20 types => [
21 qw(
22 SCALAR
23 ARRAYREF
24 HASHREF
25 CODEREF
26 GLOB
27 GLOBREF
28 SCALARREF
29 HANDLE
30 BOOLEAN
31 UNDEF
32 OBJECT
33 )
34 ],
35);
36
371600nsour %EXPORT_TAGS = (
38 'all' => [
39 qw( validate validate_pos validation_options validate_with ),
4028µs map { @{ $tags{$_} } } keys %tags
41 ],
42 %tags,
43);
44
4523µsour @EXPORT_OK = ( @{ $EXPORT_TAGS{all} }, 'set_options' );
461700nsour @EXPORT = qw( validate validate_pos );
47
481400ns$NO_VALIDATION = $ENV{PERL_NO_VALIDATION};
49
50{
5124µs125µs my $loader = Module::Implementation::build_loader_sub(
# spent 25µs making 1 call to Module::Implementation::build_loader_sub
52 implementations => [ 'XS', 'PP' ],
53 symbols => [
54 qw(
55 validate
56 validate_pos
57 validate_with
58 validation_options
59 set_options
60 ),
61 ],
62 );
63
641500ns $ENV{PARAMS_VALIDATE_IMPLEMENTATION} = 'PP' if $ENV{PV_TEST_PERL};
65
6614µs1686µs $loader->();
67}
68
69112µs1;
70
71# ABSTRACT: Validate method/function parameters
72
73__END__