← Index
NYTProf Performance Profile   « line view »
For ../prof.pl
  Run on Wed Dec 14 15:33:55 2022
Reported on Wed Dec 14 15:40:02 2022

Filename/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/darwin-2level/Ref/Util/XS.pm
StatementsExecuted 44 statements in 1.76ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11120µs22µsRef::Util::XS::::BEGIN@4Ref::Util::XS::BEGIN@4
11116µs17µsRef::Util::XS::::BEGIN@6Ref::Util::XS::BEGIN@6
11113µs39µsRef::Util::XS::::BEGIN@5Ref::Util::XS::BEGIN@5
1116µs17µsRef::Util::XS::::BEGIN@8Ref::Util::XS::BEGIN@8
1114µs9µsRef::Util::XS::::BEGIN@47Ref::Util::XS::BEGIN@47
1111µs1µsRef::Util::XS::::__ANON__Ref::Util::XS::__ANON__ (xsub)
1111µs1µsRef::Util::XS::::_using_custom_opsRef::Util::XS::_using_custom_ops (xsub)
0000s0sRef::Util::XS::::__ANON__[:62]Ref::Util::XS::__ANON__[:62]
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Ref::Util::XS;
2# ABSTRACT: XS implementation for Ref::Util
311µs$Ref::Util::XS::VERSION = '0.117';
4222µs224µs
# spent 22µs (20+2) within Ref::Util::XS::BEGIN@4 which was called: # once (20µs+2µs) by OpenAPI::Modern::BEGIN@20 at line 4
use strict;
# spent 22µs making 1 call to Ref::Util::XS::BEGIN@4 # spent 2µs making 1 call to strict::import
5227µs265µs
# spent 39µs (13+26) within Ref::Util::XS::BEGIN@5 which was called: # once (13µs+26µs) by OpenAPI::Modern::BEGIN@20 at line 5
use warnings;
# spent 39µs making 1 call to Ref::Util::XS::BEGIN@5 # spent 26µs making 1 call to warnings::import
6232µs218µs
# spent 17µs (16+1) within Ref::Util::XS::BEGIN@6 which was called: # once (16µs+1µs) by OpenAPI::Modern::BEGIN@20 at line 6
use XSLoader;
# spent 17µs making 1 call to Ref::Util::XS::BEGIN@6 # spent 1µs making 1 call to Ref::Util::XS::__ANON__
7
83101µs328µs
# spent 17µs (6+11) within Ref::Util::XS::BEGIN@8 which was called: # once (6µs+11µs) by OpenAPI::Modern::BEGIN@20 at line 8
use Exporter 5.57 'import';
# spent 17µs making 1 call to Ref::Util::XS::BEGIN@8 # spent 6µs making 1 call to UNIVERSAL::VERSION # spent 5µs making 1 call to Exporter::import
9
1012µsour %EXPORT_TAGS = ( 'all' => [qw<
11 is_ref
12 is_scalarref
13 is_arrayref
14 is_hashref
15 is_coderef
16 is_regexpref
17 is_globref
18 is_formatref
19 is_ioref
20 is_refref
21
22 is_plain_ref
23 is_plain_scalarref
24 is_plain_arrayref
25 is_plain_hashref
26 is_plain_coderef
27 is_plain_globref
28 is_plain_formatref
29 is_plain_refref
30
31 is_blessed_ref
32 is_blessed_scalarref
33 is_blessed_arrayref
34 is_blessed_hashref
35 is_blessed_coderef
36 is_blessed_globref
37 is_blessed_formatref
38 is_blessed_refref
39>] );
40
4111µsour @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
42
4311.22ms11.21msXSLoader::load('Ref::Util::XS', $Ref::Util::XS::{VERSION} ? ${ $Ref::Util::XS::{VERSION} } : ());
# spent 1.21ms making 1 call to XSLoader::load
44
4515µs11µsif (_using_custom_ops()) {
# spent 1µs making 1 call to Ref::Util::XS::_using_custom_ops
4611µs for my $op (@{$EXPORT_TAGS{all}}) {
472168µs214µs
# spent 9µs (4+5) within Ref::Util::XS::BEGIN@47 which was called: # once (4µs+5µs) by OpenAPI::Modern::BEGIN@20 at line 47
no strict 'refs';
# spent 9µs making 1 call to Ref::Util::XS::BEGIN@47 # spent 5µs making 1 call to strict::unimport
48 *{"B::Deparse::pp_$op"} = sub {
49 my ($deparse, $bop, $cx) = @_;
50 my @kids = $deparse->deparse($bop->first, 6);
51 my $sib = $bop->first->sibling;
52 if (ref $sib ne 'B::NULL') {
53 push @kids, $deparse->deparse($sib, 6);
54 }
55 my $prefix
56 = (
57 exists &{"$deparse->{curstash}::$op"}
58 && \&{"$deparse->{curstash}::$op"} == \&{__PACKAGE__.'::'.$op}
59 )
60 ? '' : (__PACKAGE__.'::');
61 return "$prefix$op(" . join(", ", @kids) . ")";
6226166µs };
63 }
64}
65
66110µs1;
67
68__END__
 
# spent 1µs within Ref::Util::XS::__ANON__ which was called: # once (1µs+0s) by Ref::Util::XS::BEGIN@6 at line 6
sub Ref::Util::XS::__ANON__; # xsub
# spent 1µs within Ref::Util::XS::_using_custom_ops which was called: # once (1µs+0s) by OpenAPI::Modern::BEGIN@20 at line 45
sub Ref::Util::XS::_using_custom_ops; # xsub