← Index
NYTProf Performance Profile   « block view • line view • sub view »
For -e
  Run on Wed Nov 17 21:45:08 2010
Reported on Wed Nov 17 22:14:07 2010

Filename/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/x86_64-linux/Variable/Magic.pm
StatementsExecuted 35 statements in 3.03ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
54111.43ms2.06msVariable::Magic::::castVariable::Magic::cast (xsub)
5411413µs413µsVariable::Magic::::getdataVariable::Magic::getdata (xsub)
111106µs143µsVariable::Magic::::wizardVariable::Magic::wizard
11192µs92µsVariable::Magic::::BEGIN@3Variable::Magic::BEGIN@3
11150µs845µsVariable::Magic::::BEGIN@204Variable::Magic::BEGIN@204
11148µs296µsVariable::Magic::::BEGIN@565Variable::Magic::BEGIN@565
11139µs56µsVariable::Magic::::BEGIN@5Variable::Magic::BEGIN@5
11139µs203µsVariable::Magic::::BEGIN@8Variable::Magic::BEGIN@8
11137µs37µsVariable::Magic::::_wizardVariable::Magic::_wizard (xsub)
11136µs103µsVariable::Magic::::BEGIN@6Variable::Magic::BEGIN@6
11119µs19µsVariable::Magic::::BEGIN@21Variable::Magic::BEGIN@21
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Variable::Magic;
2
33151µs192µs
# spent 92µs within Variable::Magic::BEGIN@3 which was called: # once (92µs+0s) by B::Hooks::EndOfScope::BEGIN@14 at line 3
use 5.008;
# spent 92µs making 1 call to Variable::Magic::BEGIN@3
4
5392µs272µs
# spent 56µs (39+17) within Variable::Magic::BEGIN@5 which was called: # once (39µs+17µs) by B::Hooks::EndOfScope::BEGIN@14 at line 5
use strict;
# spent 56µs making 1 call to Variable::Magic::BEGIN@5 # spent 17µs making 1 call to strict::import
63116µs2170µs
# spent 103µs (36+67) within Variable::Magic::BEGIN@6 which was called: # once (36µs+67µs) by B::Hooks::EndOfScope::BEGIN@14 at line 6
use warnings;
# spent 103µs making 1 call to Variable::Magic::BEGIN@6 # spent 67µs making 1 call to warnings::import
7
83165µs2368µs
# spent 203µs (39+165) within Variable::Magic::BEGIN@8 which was called: # once (39µs+165µs) by B::Hooks::EndOfScope::BEGIN@14 at line 8
use Carp qw/croak/;
# spent 203µs making 1 call to Variable::Magic::BEGIN@8 # spent 165µs making 1 call to Exporter::import
9
10=head1 NAME
11
- -
2012µsour $VERSION;
21
# spent 19µs within Variable::Magic::BEGIN@21 which was called: # once (19µs+0s) by B::Hooks::EndOfScope::BEGIN@14 at line 23
BEGIN {
22118µs $VERSION = '0.43';
231218µs119µs}
# spent 19µs making 1 call to Variable::Magic::BEGIN@21
24
25=head1 SYNOPSIS
26
- -
204
# spent 845µs (50+795) within Variable::Magic::BEGIN@204 which was called: # once (50µs+795µs) by B::Hooks::EndOfScope::BEGIN@14 at line 207
BEGIN {
20513µs require XSLoader;
2061841µs1795µs XSLoader::load(__PACKAGE__, $VERSION);
# spent 795µs making 1 call to XSLoader::load
2071781µs1845µs}
# spent 845µs making 1 call to Variable::Magic::BEGIN@204
208
209=head2 C<wizard>
210
- -
298
# spent 143µs (106+37) within Variable::Magic::wizard which was called: # once (106µs+37µs) by namespace::clean::BEGIN@17 at line 26 of B/Hooks/EndOfScope.pm
sub wizard {
29914µs croak 'Wrong number of arguments for wizard()' if @_ % 2;
30018µs my %opts = @_;
30119µs my @keys = qw/data op_info get set len clear free/;
30215µs push @keys, 'copy' if MGf_COPY;
30313µs push @keys, 'dup' if MGf_DUP;
30413µs push @keys, 'local' if MGf_LOCAL;
30517µs push @keys, qw/fetch store exists delete copy_key/ if VMG_UVAR;
306285µs137µs my $ret = eval { _wizard(map $opts{$_}, @keys) };
# spent 37µs making 1 call to Variable::Magic::_wizard
30713µs if (my $err = $@) {
308 $err =~ s/\sat\s+.*?\n//;
309 croak $err;
310 }
311122µs return $ret;
312}
313
314=head2 C<cast>
315
- -
5653392µs2543µs
# spent 296µs (48+248) within Variable::Magic::BEGIN@565 which was called: # once (48µs+248µs) by B::Hooks::EndOfScope::BEGIN@14 at line 565
use base qw/Exporter/;
# spent 296µs making 1 call to Variable::Magic::BEGIN@565 # spent 248µs making 1 call to base::import
566
56713µsour @EXPORT = ();
568120µsour %EXPORT_TAGS = (
569 'funcs' => [ qw/wizard cast getdata dispell/ ],
570 'consts' => [ qw/
571 MGf_COPY MGf_DUP MGf_LOCAL VMG_UVAR
572 VMG_COMPAT_ARRAY_PUSH_NOLEN VMG_COMPAT_ARRAY_PUSH_NOLEN_VOID
573 VMG_COMPAT_ARRAY_UNSHIFT_NOLEN_VOID
574 VMG_COMPAT_ARRAY_UNDEF_CLEAR
575 VMG_COMPAT_SCALAR_LENGTH_NOLEN
576 VMG_COMPAT_GLOB_GET
577 VMG_PERL_PATCHLEVEL
578 VMG_THREADSAFE VMG_FORKSAFE
579 VMG_OP_INFO_NAME VMG_OP_INFO_OBJECT
580 / ],
581);
582145µsour @EXPORT_OK = map { @$_ } values %EXPORT_TAGS;
583114µs$EXPORT_TAGS{'all'} = [ @EXPORT_OK ];
584
585=head1 CAVEATS
586
- -
639124µs1; # End of Variable::Magic
 
# spent 37µs within Variable::Magic::_wizard which was called: # once (37µs+0s) by Variable::Magic::wizard at line 306
sub Variable::Magic::_wizard; # xsub
# spent 2.06ms (1.43+631µs) within Variable::Magic::cast which was called 54 times, avg 38µs/call: # 54 times (1.43ms+631µs) by B::Hooks::EndOfScope::on_scope_end at line 37 of B/Hooks/EndOfScope.pm, avg 38µs/call
sub Variable::Magic::cast; # xsub
# spent 413µs within Variable::Magic::getdata which was called 54 times, avg 8µs/call: # 54 times (413µs+0s) by B::Hooks::EndOfScope::on_scope_end at line 33 of B/Hooks/EndOfScope.pm, avg 8µs/call
sub Variable::Magic::getdata; # xsub