← Index
NYTProf Performance Profile   « block view • line view • sub view »
For -e
  Run on Wed Nov 17 21:39:01 2010
Reported on Wed Nov 17 22:04:56 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 2.98ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
46111.33ms1.84msVariable::Magic::::castVariable::Magic::cast (xsub)
4611323µs323µsVariable::Magic::::getdataVariable::Magic::getdata (xsub)
111109µs149µsVariable::Magic::::wizardVariable::Magic::wizard
11195µs95µsVariable::Magic::::BEGIN@3Variable::Magic::BEGIN@3
11147µs319µsVariable::Magic::::BEGIN@565Variable::Magic::BEGIN@565
11146µs802µsVariable::Magic::::BEGIN@204Variable::Magic::BEGIN@204
11140µs40µsVariable::Magic::::_wizardVariable::Magic::_wizard (xsub)
11139µs308µsVariable::Magic::::BEGIN@8Variable::Magic::BEGIN@8
11138µs56µsVariable::Magic::::BEGIN@5Variable::Magic::BEGIN@5
11137µs105µsVariable::Magic::::BEGIN@6Variable::Magic::BEGIN@6
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
33143µ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
5392µs273µs
# spent 56µs (38+18) within Variable::Magic::BEGIN@5 which was called: # once (38µs+18µs) by B::Hooks::EndOfScope::BEGIN@14 at line 5
use strict;
# spent 56µs making 1 call to Variable::Magic::BEGIN@5 # spent 18µs making 1 call to strict::import
63104µs2173µs
# spent 105µs (37+68) within Variable::Magic::BEGIN@6 which was called: # once (37µs+68µs) by B::Hooks::EndOfScope::BEGIN@14 at line 6
use warnings;
# spent 105µs making 1 call to Variable::Magic::BEGIN@6 # spent 68µs making 1 call to warnings::import
7
83173µs2576µs
# spent 308µs (39+268) within Variable::Magic::BEGIN@8 which was called: # once (39µs+268µs) by B::Hooks::EndOfScope::BEGIN@14 at line 8
use Carp qw/croak/;
# spent 308µs making 1 call to Variable::Magic::BEGIN@8 # spent 268µ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 {
22118µs $VERSION = '0.43';
231231µs120µs}
# spent 20µs making 1 call to Variable::Magic::BEGIN@21
24
25=head1 SYNOPSIS
26
- -
204
# spent 802µs (46+756) within Variable::Magic::BEGIN@204 which was called: # once (46µs+756µs) by B::Hooks::EndOfScope::BEGIN@14 at line 207
BEGIN {
2052801µs require XSLoader;
2061756µs XSLoader::load(__PACKAGE__, $VERSION);
# spent 756µs making 1 call to XSLoader::load
2071726µs1802µs}
# spent 802µs making 1 call to Variable::Magic::BEGIN@204
208
209=head2 C<wizard>
210
- -
298
# spent 149µs (109+40) within Variable::Magic::wizard which was called: # once (109µs+40µs) by namespace::clean::BEGIN@17 at line 26 of B/Hooks/EndOfScope.pm
sub wizard {
29911156µ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;
306140µs my $ret = eval { _wizard(map $opts{$_}, @keys) };
# spent 40µ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
- -
5653424µs2590µs
# spent 319µs (47+271) within Variable::Magic::BEGIN@565 which was called: # once (47µs+271µs) by B::Hooks::EndOfScope::BEGIN@14 at line 565
use base qw/Exporter/;
# spent 319µs making 1 call to Variable::Magic::BEGIN@565 # spent 271µs making 1 call to base::import
566
56713µsour @EXPORT = ();
568121µ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
- -
639124µs1; # End of Variable::Magic
 
# spent 40µs within Variable::Magic::_wizard which was called: # once (40µs+0s) by Variable::Magic::wizard at line 306
sub Variable::Magic::_wizard; # xsub
# spent 1.84ms (1.33+510µs) within Variable::Magic::cast which was called 46 times, avg 40µs/call: # 46 times (1.33ms+510µs) by B::Hooks::EndOfScope::on_scope_end at line 37 of B/Hooks/EndOfScope.pm, avg 40µs/call
sub Variable::Magic::cast; # xsub
# spent 323µs within Variable::Magic::getdata which was called 46 times, avg 7µs/call: # 46 times (323µ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