← Index
NYTProf Performance Profile   « block view • line view • sub view »
For -e
  Run on Wed Nov 17 22:00:36 2010
Reported on Wed Nov 17 22:10:08 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.04ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
54111.45ms2.07msVariable::Magic::::castVariable::Magic::cast (xsub)
5411400µs400µsVariable::Magic::::getdataVariable::Magic::getdata (xsub)
111108µs144µsVariable::Magic::::wizardVariable::Magic::wizard
11195µs95µsVariable::Magic::::BEGIN@3Variable::Magic::BEGIN@3
11147µs826µsVariable::Magic::::BEGIN@204Variable::Magic::BEGIN@204
11146µs295µsVariable::Magic::::BEGIN@565Variable::Magic::BEGIN@565
11141µs214µsVariable::Magic::::BEGIN@8Variable::Magic::BEGIN@8
11139µs56µsVariable::Magic::::BEGIN@5Variable::Magic::BEGIN@5
11137µs101µsVariable::Magic::::BEGIN@6Variable::Magic::BEGIN@6
11136µs36µsVariable::Magic::::_wizardVariable::Magic::_wizard (xsub)
11120µs20µ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
33146µs195µs
# spent 95µs within Variable::Magic::BEGIN@3 which was called: # once (95µs+0s) by B::Hooks::EndOfScope::BEGIN@14 at line 3
use 5.008;
# spent 95µs making 1 call to Variable::Magic::BEGIN@3
4
53102µs273µ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
63103µs2166µs
# spent 101µs (37+65) within Variable::Magic::BEGIN@6 which was called: # once (37µs+65µs) by B::Hooks::EndOfScope::BEGIN@14 at line 6
use warnings;
# spent 101µs making 1 call to Variable::Magic::BEGIN@6 # spent 65µs making 1 call to warnings::import
7
83194µs2386µs
# spent 214µs (41+173) within Variable::Magic::BEGIN@8 which was called: # once (41µs+173µs) by B::Hooks::EndOfScope::BEGIN@14 at line 8
use Carp qw/croak/;
# spent 214µs making 1 call to Variable::Magic::BEGIN@8 # spent 173µs making 1 call to Exporter::import
9
10=head1 NAME
11
- -
2012µsour $VERSION;
21
# spent 20µs within Variable::Magic::BEGIN@21 which was called: # once (20µs+0s) by B::Hooks::EndOfScope::BEGIN@14 at line 23
BEGIN {
22120µs $VERSION = '0.43';
231253µs120µs}
# spent 20µs making 1 call to Variable::Magic::BEGIN@21
24
25=head1 SYNOPSIS
26
- -
204
# spent 826µs (47+779) within Variable::Magic::BEGIN@204 which was called: # once (47µs+779µs) by B::Hooks::EndOfScope::BEGIN@14 at line 207
BEGIN {
2052824µs require XSLoader;
2061779µs XSLoader::load(__PACKAGE__, $VERSION);
# spent 779µs making 1 call to XSLoader::load
2071745µs1826µs}
# spent 826µs making 1 call to Variable::Magic::BEGIN@204
208
209=head2 C<wizard>
210
- -
298
# spent 144µs (108+36) within Variable::Magic::wizard which was called: # once (108µs+36µs) by namespace::clean::BEGIN@17 at line 26 of B/Hooks/EndOfScope.pm
sub wizard {
29911150µs croak 'Wrong number of arguments for wizard()' if @_ % 2;
300 my %opts = @_;
301 my @keys = qw/data op_info get set len clear free/;
302 push @keys, 'copy' if MGf_COPY;
303 push @keys, 'dup' if MGf_DUP;
304 push @keys, 'local' if MGf_LOCAL;
305 push @keys, qw/fetch store exists delete copy_key/ if VMG_UVAR;
306136µs my $ret = eval { _wizard(map $opts{$_}, @keys) };
# spent 36µs making 1 call to Variable::Magic::_wizard
307 if (my $err = $@) {
308 $err =~ s/\sat\s+.*?\n//;
309 croak $err;
310 }
311 return $ret;
312}
313
314=head2 C<cast>
315
- -
5653393µs2544µs
# spent 295µs (46+249) within Variable::Magic::BEGIN@565 which was called: # once (46µs+249µs) by B::Hooks::EndOfScope::BEGIN@14 at line 565
use base qw/Exporter/;
# spent 295µs making 1 call to Variable::Magic::BEGIN@565 # spent 249µ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;
583113µs$EXPORT_TAGS{'all'} = [ @EXPORT_OK ];
584
585=head1 CAVEATS
586
- -
639125µs1; # End of Variable::Magic
 
# spent 36µs within Variable::Magic::_wizard which was called: # once (36µs+0s) by Variable::Magic::wizard at line 306
sub Variable::Magic::_wizard; # xsub
# spent 2.07ms (1.45+616µs) within Variable::Magic::cast which was called 54 times, avg 38µs/call: # 54 times (1.45ms+616µ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 400µs within Variable::Magic::getdata which was called 54 times, avg 7µs/call: # 54 times (400µs+0s) by B::Hooks::EndOfScope::on_scope_end at line 33 of B/Hooks/EndOfScope.pm, avg 7µs/call
sub Variable::Magic::getdata; # xsub