| Filename | /Users/ether/.perlbrew/libs/36.0@std/lib/perl5/darwin-2level/Ref/Util/XS.pm | 
| Statements | Executed 44 statements in 1.32ms | 
| Calls | P | F | Exclusive Time | Inclusive Time | Subroutine | 
|---|---|---|---|---|---|
| 1 | 1 | 1 | 20µs | 23µs | Ref::Util::XS::BEGIN@4 | 
| 1 | 1 | 1 | 9µs | 18µs | Ref::Util::XS::BEGIN@8 | 
| 1 | 1 | 1 | 7µs | 7µs | Ref::Util::XS::BEGIN@6 | 
| 1 | 1 | 1 | 6µs | 10µs | Ref::Util::XS::BEGIN@47 | 
| 1 | 1 | 1 | 5µs | 24µs | Ref::Util::XS::BEGIN@5 | 
| 1 | 1 | 1 | 2µs | 2µs | Ref::Util::XS::_using_custom_ops (xsub) | 
| 1 | 1 | 1 | 0s | 0s | Ref::Util::XS::__ANON__ (xsub) | 
| 0 | 0 | 0 | 0s | 0s | Ref::Util::XS::__ANON__[:62] | 
| Line | State ments | Time on line | Calls | Time in subs | Code | 
|---|---|---|---|---|---|
| 1 | package Ref::Util::XS; | ||||
| 2 | # ABSTRACT: XS implementation for Ref::Util | ||||
| 3 | 1 | 0s | $Ref::Util::XS::VERSION = '0.117'; | ||
| 4 | 2 | 21µs | 2 | 26µs | # spent 23µs (20+3) within Ref::Util::XS::BEGIN@4 which was called:
#    once (20µs+3µs) by OpenAPI::Modern::BEGIN@20 at line 4 # spent    23µs making 1 call to Ref::Util::XS::BEGIN@4
# spent     3µs making 1 call to strict::import | 
| 5 | 2 | 10µs | 2 | 43µs | # spent 24µs (5+19) within Ref::Util::XS::BEGIN@5 which was called:
#    once (5µs+19µs) by OpenAPI::Modern::BEGIN@20 at line 5 # spent    24µs making 1 call to Ref::Util::XS::BEGIN@5
# spent    19µs making 1 call to warnings::import | 
| 6 | 2 | 20µs | 2 | 7µs | # spent 7µs within Ref::Util::XS::BEGIN@6 which was called:
#    once (7µs+0s) by OpenAPI::Modern::BEGIN@20 at line 6 # spent     7µs making 1 call to Ref::Util::XS::BEGIN@6
# spent     0s making 1 call to Ref::Util::XS::__ANON__ | 
| 7 | |||||
| 8 | 3 | 94µs | 3 | 27µs | # spent 18µs (9+9) within Ref::Util::XS::BEGIN@8 which was called:
#    once (9µs+9µs) by OpenAPI::Modern::BEGIN@20 at line 8 # spent    18µs making 1 call to Ref::Util::XS::BEGIN@8
# spent     6µs making 1 call to UNIVERSAL::VERSION
# spent     3µs making 1 call to Exporter::import | 
| 9 | |||||
| 10 | 1 | 2µs | our %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 | |||||
| 41 | 1 | 1µs | our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); | ||
| 42 | |||||
| 43 | 1 | 889µs | 1 | 877µs | XSLoader::load('Ref::Util::XS', $Ref::Util::XS::{VERSION} ? ${ $Ref::Util::XS::{VERSION} } : ()); # spent   877µs making 1 call to XSLoader::load | 
| 44 | |||||
| 45 | 1 | 8µs | 1 | 2µs | if (_using_custom_ops()) { # spent     2µs making 1 call to Ref::Util::XS::_using_custom_ops | 
| 46 | 1 | 4µs | for my $op (@{$EXPORT_TAGS{all}}) { | ||
| 47 | 2 | 178µs | 2 | 14µs | # spent 10µs (6+4) within Ref::Util::XS::BEGIN@47 which was called:
#    once (6µs+4µs) by OpenAPI::Modern::BEGIN@20 at line 47     # spent    10µs making 1 call to Ref::Util::XS::BEGIN@47
    # spent     4µ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) . ")"; | ||||
| 62 | 26 | 74µs | }; | ||
| 63 | } | ||||
| 64 | } | ||||
| 65 | |||||
| 66 | 1 | 17µs | 1; | ||
| 67 | |||||
| 68 | __END__ | ||||
| # spent 0s within Ref::Util::XS::__ANON__ which was called:
#    once (0s+0s) by Ref::Util::XS::BEGIN@6 at line 6 | |||||
| # spent 2µs within Ref::Util::XS::_using_custom_ops which was called:
#    once (2µs+0s) by OpenAPI::Modern::BEGIN@20 at line 45 |