← 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:04 2022

Filename/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/YAML/PP.pm
StatementsExecuted 74 statements in 6.49ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
1112.74ms6.51msYAML::PP::::BEGIN@8 YAML::PP::BEGIN@8
1112.23ms12.1msYAML::PP::::BEGIN@11 YAML::PP::BEGIN@11
1111.63ms1.72msYAML::PP::Preserve::Array::::BEGIN@300 YAML::PP::Preserve::Array::BEGIN@300
1111.44ms1.57msYAML::PP::Preserve::Hash::::BEGIN@226 YAML::PP::Preserve::Hash::BEGIN@226
1111.25ms1.55msYAML::PP::::BEGIN@9 YAML::PP::BEGIN@9
1111.00ms29.0msYAML::PP::::BEGIN@10 YAML::PP::BEGIN@10
11165µs2.67msYAML::PP::::new YAML::PP::new
11163µs67µsmain::::BEGIN@2.280 main::BEGIN@2.280
11112µs43µsYAML::PP::Preserve::Scalar::::BEGIN@377YAML::PP::Preserve::Scalar::BEGIN@377
11111µs400µsYAML::PP::Preserve::Hash::::BEGIN@227 YAML::PP::Preserve::Hash::BEGIN@227
11111µs6.54sYAML::PP::::load_file YAML::PP::load_file
11110µs34µsYAML::PP::::BEGIN@12 YAML::PP::BEGIN@12
1119µs75µsYAML::PP::::BEGIN@15 YAML::PP::BEGIN@15
1119µs197µsYAML::PP::Preserve::Array::::BEGIN@301 YAML::PP::Preserve::Array::BEGIN@301
1118µs33µsYAML::PP::::BEGIN@13 YAML::PP::BEGIN@13
1118µs37µsYAML::PP::Preserve::Hash::::BEGIN@228 YAML::PP::Preserve::Hash::BEGIN@228
1117µs46µsmain::::BEGIN@3.281 main::BEGIN@3.281
1116µs25µsYAML::PP::Preserve::Array::::BEGIN@302 YAML::PP::Preserve::Array::BEGIN@302
1115µs5µsYAML::PP::::_arg_yaml_version YAML::PP::_arg_yaml_version
1114µs4µsYAML::PP::::loader YAML::PP::loader
1112µs2µsYAML::PP::Preserve::Array::::__ANON__ YAML::PP::Preserve::Array::__ANON__ (xsub)
1112µs2µsYAML::PP::Preserve::Hash::::__ANON__ YAML::PP::Preserve::Hash::__ANON__ (xsub)
0000s0sYAML::PP::::Dump YAML::PP::Dump
0000s0sYAML::PP::::DumpFile YAML::PP::DumpFile
0000s0sYAML::PP::::Load YAML::PP::Load
0000s0sYAML::PP::::LoadFile YAML::PP::LoadFile
0000s0sYAML::PP::Preserve::Array::::CLEAR YAML::PP::Preserve::Array::CLEAR
0000s0sYAML::PP::Preserve::Array::::DELETE YAML::PP::Preserve::Array::DELETE
0000s0sYAML::PP::Preserve::Array::::EXISTS YAML::PP::Preserve::Array::EXISTS
0000s0sYAML::PP::Preserve::Array::::EXTEND YAML::PP::Preserve::Array::EXTEND
0000s0sYAML::PP::Preserve::Array::::FETCH YAML::PP::Preserve::Array::FETCH
0000s0sYAML::PP::Preserve::Array::::FETCHSIZE YAML::PP::Preserve::Array::FETCHSIZE
0000s0sYAML::PP::Preserve::Array::::PUSH YAML::PP::Preserve::Array::PUSH
0000s0sYAML::PP::Preserve::Array::::SHIFT YAML::PP::Preserve::Array::SHIFT
0000s0sYAML::PP::Preserve::Array::::SPLICE YAML::PP::Preserve::Array::SPLICE
0000s0sYAML::PP::Preserve::Array::::STORE YAML::PP::Preserve::Array::STORE
0000s0sYAML::PP::Preserve::Array::::STORESIZE YAML::PP::Preserve::Array::STORESIZE
0000s0sYAML::PP::Preserve::Array::::TIEARRAY YAML::PP::Preserve::Array::TIEARRAY
0000s0sYAML::PP::Preserve::Array::::UNSHIFT YAML::PP::Preserve::Array::UNSHIFT
0000s0sYAML::PP::Preserve::Array::::_preserve YAML::PP::Preserve::Array::_preserve
0000s0sYAML::PP::Preserve::Hash::::CLEAR YAML::PP::Preserve::Hash::CLEAR
0000s0sYAML::PP::Preserve::Hash::::DELETE YAML::PP::Preserve::Hash::DELETE
0000s0sYAML::PP::Preserve::Hash::::EXISTS YAML::PP::Preserve::Hash::EXISTS
0000s0sYAML::PP::Preserve::Hash::::FETCH YAML::PP::Preserve::Hash::FETCH
0000s0sYAML::PP::Preserve::Hash::::FIRSTKEY YAML::PP::Preserve::Hash::FIRSTKEY
0000s0sYAML::PP::Preserve::Hash::::NEXTKEY YAML::PP::Preserve::Hash::NEXTKEY
0000s0sYAML::PP::Preserve::Hash::::SCALAR YAML::PP::Preserve::Hash::SCALAR
0000s0sYAML::PP::Preserve::Hash::::STORE YAML::PP::Preserve::Hash::STORE
0000s0sYAML::PP::Preserve::Hash::::TIEHASH YAML::PP::Preserve::Hash::TIEHASH
0000s0sYAML::PP::Preserve::Scalar::::aliasYAML::PP::Preserve::Scalar::alias
0000s0sYAML::PP::Preserve::Scalar::::newYAML::PP::Preserve::Scalar::new
0000s0sYAML::PP::Preserve::Scalar::::styleYAML::PP::Preserve::Scalar::style
0000s0sYAML::PP::Preserve::Scalar::::tagYAML::PP::Preserve::Scalar::tag
0000s0sYAML::PP::Preserve::Scalar::::valueYAML::PP::Preserve::Scalar::value
0000s0sYAML::PP::::clone YAML::PP::clone
0000s0sYAML::PP::::default_schema YAML::PP::default_schema
0000s0sYAML::PP::::dump YAML::PP::dump
0000s0sYAML::PP::::dump_file YAML::PP::dump_file
0000s0sYAML::PP::::dump_string YAML::PP::dump_string
0000s0sYAML::PP::::dumper YAML::PP::dumper
0000s0sYAML::PP::::load_string YAML::PP::load_string
0000s0sYAML::PP::::preserved_mapping YAML::PP::preserved_mapping
0000s0sYAML::PP::::preserved_scalar YAML::PP::preserved_scalar
0000s0sYAML::PP::::preserved_sequence YAML::PP::preserved_sequence
0000s0sYAML::PP::::schema YAML::PP::schema
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1# ABSTRACT: YAML 1.2 Processor
2244µs271µs
# spent 67µs (63+4) within main::BEGIN@2.280 which was called: # once (63µs+4µs) by main::BEGIN@3 at line 2
use strict;
# spent 67µs making 1 call to main::BEGIN@2.280 # spent 4µs making 1 call to strict::import
3249µs285µs
# spent 46µs (7+39) within main::BEGIN@3.281 which was called: # once (7µs+39µs) by main::BEGIN@3 at line 3
use warnings;
# spent 46µs making 1 call to main::BEGIN@3.281 # spent 39µs making 1 call to warnings::import
4package YAML::PP;
5
610sour $VERSION = '0.035'; # VERSION
7
82541µs26.52ms
# spent 6.51ms (2.74+3.78) within YAML::PP::BEGIN@8 which was called: # once (2.74ms+3.78ms) by main::BEGIN@3 at line 8
use YAML::PP::Schema;
# spent 6.51ms making 1 call to YAML::PP::BEGIN@8 # spent 6µs making 1 call to YAML::PP::__ANON__
92647µs21.56ms
# spent 1.55ms (1.25+306µs) within YAML::PP::BEGIN@9 which was called: # once (1.25ms+306µs) by main::BEGIN@3 at line 9
use YAML::PP::Schema::JSON;
# spent 1.55ms making 1 call to YAML::PP::BEGIN@9 # spent 12µs making 1 call to Exporter::import
102524µs229.0ms
# spent 29.0ms (1.00+28.0) within YAML::PP::BEGIN@10 which was called: # once (1.00ms+28.0ms) by main::BEGIN@3 at line 10
use YAML::PP::Loader;
# spent 29.0ms making 1 call to YAML::PP::BEGIN@10 # spent 1µs making 1 call to YAML::PP::__ANON__
112438µs212.1ms
# spent 12.1ms (2.23+9.84) within YAML::PP::BEGIN@11 which was called: # once (2.23ms+9.84ms) by main::BEGIN@3 at line 11
use YAML::PP::Dumper;
# spent 12.1ms making 1 call to YAML::PP::BEGIN@11 # spent 2µs making 1 call to YAML::PP::__ANON__
12230µs258µs
# spent 34µs (10+24) within YAML::PP::BEGIN@12 which was called: # once (10µs+24µs) by main::BEGIN@3 at line 12
use Scalar::Util qw/ blessed /;
# spent 34µs making 1 call to YAML::PP::BEGIN@12 # spent 24µs making 1 call to Exporter::import
13222µs258µs
# spent 33µs (8+25) within YAML::PP::BEGIN@13 which was called: # once (8µs+25µs) by main::BEGIN@3 at line 13
use Carp qw/ croak /;
# spent 33µs making 1 call to YAML::PP::BEGIN@13 # spent 25µs making 1 call to Exporter::import
14
152985µs2141µs
# spent 75µs (9+66) within YAML::PP::BEGIN@15 which was called: # once (9µs+66µs) by main::BEGIN@3 at line 15
use base 'Exporter';
# spent 75µs making 1 call to YAML::PP::BEGIN@15 # spent 66µs making 1 call to base::import
1612µsour @EXPORT_OK = qw/ Load LoadFile Dump DumpFile /;
17
1811µsmy %YAML_VERSIONS = ('1.1' => 1, '1.2' => 1);
19
20
21
# spent 2.67ms (65µs+2.60) within YAML::PP::new which was called: # once (65µs+2.60ms) by main::RUNTIME at line 6 of /Users/ether/git/fastly/Heavenly/profiling/jsm-0.552-om-0.031/../prof.pl
sub new {
2213µs my ($class, %args) = @_;
23
2411µs my $bool = delete $args{boolean};
2511µs $bool = 'perl' unless defined $bool;
2612µs my $schemas = delete $args{schema} || ['+'];
2711µs my $cyclic_refs = delete $args{cyclic_refs} || 'allow';
2811µs my $indent = delete $args{indent};
2911µs my $width = delete $args{width};
3010s my $writer = delete $args{writer};
3110s my $header = delete $args{header};
3211µs my $footer = delete $args{footer};
3310s my $duplicate_keys = delete $args{duplicate_keys};
3412µs15µs my $yaml_version = $class->_arg_yaml_version(delete $args{yaml_version});
# spent 5µs making 1 call to YAML::PP::_arg_yaml_version
3510s my $default_yaml_version = $yaml_version->[0];
3610s my $version_directive = delete $args{version_directive};
3711µs my $preserve = delete $args{preserve};
3811µs my $parser = delete $args{parser};
39 my $emitter = delete $args{emitter} || {
4012µs indent => $indent,
41 width => $width,
42 writer => $writer,
43 };
4411µs if (keys %args) {
45 die "Unexpected arguments: " . join ', ', sort keys %args;
46 }
47
4810s my %schemas;
4911µs for my $v (@$yaml_version) {
5010s my $schema;
5116µs11µs if (blessed($schemas) and $schemas->isa('YAML::PP::Schema')) {
# spent 1µs making 1 call to Scalar::Util::blessed
52 $schema = $schemas;
53 }
54 else {
5513µs124µs $schema = YAML::PP::Schema->new(
# spent 24µs making 1 call to YAML::PP::Schema::new
56 boolean => $bool,
57 yaml_version => $v,
58 );
5912µs12.34ms $schema->load_subschemas(@$schemas);
# spent 2.34ms making 1 call to YAML::PP::Schema::load_subschemas
60 }
6112µs $schemas{ $v } = $schema;
62 }
6311µs my $default_schema = $schemas{ $default_yaml_version };
64
6514µs1144µs my $loader = YAML::PP::Loader->new(
# spent 144µs making 1 call to YAML::PP::Loader::new
66 schemas => \%schemas,
67 cyclic_refs => $cyclic_refs,
68 parser => $parser,
69 default_yaml_version => $default_yaml_version,
70 preserve => $preserve,
71 duplicate_keys => $duplicate_keys,
72 );
7314µs189µs my $dumper = YAML::PP::Dumper->new(
# spent 89µs making 1 call to YAML::PP::Dumper::new
74 schema => $default_schema,
75 emitter => $emitter,
76 header => $header,
77 footer => $footer,
78 version_directive => $version_directive,
79 preserve => $preserve,
80 );
81
8212µs my $self = bless {
83 schema => \%schemas,
84 loader => $loader,
85 dumper => $dumper,
86 }, $class;
8716µs return $self;
88}
89
90sub clone {
91 my ($self) = @_;
92 my $clone = {
93 schema => $self->schema,
94 loader => $self->loader->clone,
95 dumper => $self->dumper->clone,
96 };
97 return bless $clone, ref $self;
98}
99
100
# spent 5µs within YAML::PP::_arg_yaml_version which was called: # once (5µs+0s) by YAML::PP::new at line 34
sub _arg_yaml_version {
10111µs my ($class, $version) = @_;
10211µs my @versions = ('1.2');
10311µs if (defined $version) {
104 @versions = ();
105 if (not ref $version) {
106 $version = [$version];
107 }
108 for my $v (@$version) {
109 unless ($YAML_VERSIONS{ $v }) {
110 croak "YAML Version '$v' not supported";
111 }
112 push @versions, $v;
113 }
114 }
11517µs return \@versions;
116}
117
118
119
# spent 4µs within YAML::PP::loader which was called: # once (4µs+0s) by YAML::PP::load_file at line 154
sub loader {
12011µs if (@_ > 1) {
121 $_[0]->{loader} = $_[1]
122 }
12316µs return $_[0]->{loader};
124}
125
126sub dumper {
127 if (@_ > 1) {
128 $_[0]->{dumper} = $_[1]
129 }
130 return $_[0]->{dumper};
131}
132
133sub schema {
134 if (@_ > 1) { $_[0]->{schema}->{'1.2'} = $_[1] }
135 return $_[0]->{schema}->{'1.2'};
136}
137
138sub default_schema {
139 my ($self, %args) = @_;
140 my $schema = YAML::PP::Schema->new(
141 boolean => $args{boolean},
142 );
143 $schema->load_subschemas(qw/ Core /);
144 return $schema;
145}
146
147sub load_string {
148 my ($self, $yaml) = @_;
149 return $self->loader->load_string($yaml);
150}
151
152
# spent 6.54s (11µs+6.54) within YAML::PP::load_file which was called: # once (11µs+6.54s) by main::RUNTIME at line 6 of /Users/ether/git/fastly/Heavenly/profiling/jsm-0.552-om-0.031/../prof.pl
sub load_file {
15310s my ($self, $file) = @_;
15418µs26.54s return $self->loader->load_file($file);
# spent 6.54s making 1 call to YAML::PP::Loader::load_file # spent 4µs making 1 call to YAML::PP::loader
155}
156
157sub dump {
158 my ($self, @data) = @_;
159 return $self->dumper->dump(@data);
160}
161
162sub dump_string {
163 my ($self, @data) = @_;
164 return $self->dumper->dump_string(@data);
165}
166
167sub dump_file {
168 my ($self, $file, @data) = @_;
169 return $self->dumper->dump_file($file, @data);
170}
171
172# legagy interface
173sub Load {
174 my ($yaml) = @_;
175 YAML::PP->new->load_string($yaml);
176}
177
178sub LoadFile {
179 my ($file) = @_;
180 YAML::PP->new->load_file($file);
181}
182
183sub Dump {
184 my (@data) = @_;
185 YAML::PP->new->dump_string(@data);
186}
187
188sub DumpFile {
189 my ($file, @data) = @_;
190 YAML::PP->new->dump_file($file, @data);
191}
192
193sub preserved_scalar {
194 my ($self, $value, %args) = @_;
195 my $scalar = YAML::PP::Preserve::Scalar->new(
196 value => $value,
197 %args,
198 );
199 return $scalar;
200}
201
202sub preserved_mapping {
203 my ($self, $hash, %args) = @_;
204 my $data = {};
205 tie %$data, 'YAML::PP::Preserve::Hash';
206 %$data = %$hash;
207 my $t = tied %$data;
208 $t->{style} = $args{style};
209 $t->{alias} = $args{alias};
210 return $data;
211}
212
213sub preserved_sequence {
214 my ($self, $array, %args) = @_;
215 my $data = [];
216 tie @$data, 'YAML::PP::Preserve::Array';
217 push @$data, @$array;
218 my $t = tied @$data;
219 $t->{style} = $args{style};
220 $t->{alias} = $args{alias};
221 return $data;
222}
223
224package YAML::PP::Preserve::Hash;
225# experimental
2262863µs21.57ms
# spent 1.57ms (1.44+132µs) within YAML::PP::Preserve::Hash::BEGIN@226 which was called: # once (1.44ms+132µs) by main::BEGIN@3 at line 226
use Tie::Hash;
# spent 1.57ms making 1 call to YAML::PP::Preserve::Hash::BEGIN@226 # spent 2µs making 1 call to YAML::PP::Preserve::Hash::__ANON__
227237µs2789µs
# spent 400µs (11+389) within YAML::PP::Preserve::Hash::BEGIN@227 which was called: # once (11µs+389µs) by main::BEGIN@3 at line 227
use base qw/ Tie::StdHash /;
# spent 400µs making 1 call to YAML::PP::Preserve::Hash::BEGIN@227 # spent 389µs making 1 call to base::import
2282405µs266µs
# spent 37µs (8+29) within YAML::PP::Preserve::Hash::BEGIN@228 which was called: # once (8µs+29µs) by main::BEGIN@3 at line 228
use Scalar::Util qw/ reftype blessed /;
# spent 37µs making 1 call to YAML::PP::Preserve::Hash::BEGIN@228 # spent 29µs making 1 call to Exporter::import
229
230sub TIEHASH {
231 my ($class, %args) = @_;
232 my $self = bless {
233 keys => [keys %args],
234 data => { %args },
235 }, $class;
236}
237
238sub STORE {
239 my ($self, $key, $val) = @_;
240 my $keys = $self->{keys};
241 unless (exists $self->{data}->{ $key }) {
242 push @$keys, $key;
243 }
244 if (ref $val and not blessed($val)) {
245 if (reftype($val) eq 'HASH' and not tied %$val) {
246 tie %$val, 'YAML::PP::Preserve::Hash', %$val;
247 }
248 elsif (reftype($val) eq 'ARRAY' and not tied @$val) {
249 tie @$val, 'YAML::PP::Preserve::Array', @$val;
250 }
251 }
252 $self->{data}->{ $key } = $val;
253}
254
255sub FIRSTKEY {
256 my ($self) = @_;
257 return $self->{keys}->[0];
258}
259
260sub NEXTKEY {
261 my ($self, $last) = @_;
262 my $keys = $self->{keys};
263 for my $i (0 .. $#$keys) {
264 if ("$keys->[ $i ]" eq "$last") {
265 return $keys->[ $i + 1 ];
266 }
267 }
268 return;
269}
270
271sub FETCH {
272 my ($self, $key) = @_;
273 my $val = $self->{data}->{ $key };
274}
275
276sub DELETE {
277 my ($self, $key) = @_;
278 @{ $self->{keys} } = grep { "$_" ne "$key" } @{ $self->{keys} };
279 delete $self->{data}->{ $key };
280}
281
282sub EXISTS {
283 my ($self, $key) = @_;
284 return exists $self->{data}->{ $key };
285}
286
287sub CLEAR {
288 my ($self) = @_;
289 $self->{keys} = [];
290 $self->{data} = {};
291}
292
293sub SCALAR {
294 my ($self) = @_;
295 return scalar %{ $self->{data} };
296}
297
298package YAML::PP::Preserve::Array;
299# experimental
3002822µs21.72ms
# spent 1.72ms (1.63+97µs) within YAML::PP::Preserve::Array::BEGIN@300 which was called: # once (1.63ms+97µs) by main::BEGIN@3 at line 300
use Tie::Array;
# spent 1.72ms making 1 call to YAML::PP::Preserve::Array::BEGIN@300 # spent 2µs making 1 call to YAML::PP::Preserve::Array::__ANON__
301235µs2385µs
# spent 197µs (9+188) within YAML::PP::Preserve::Array::BEGIN@301 which was called: # once (9µs+188µs) by main::BEGIN@3 at line 301
use base qw/ Tie::StdArray /;
# spent 197µs making 1 call to YAML::PP::Preserve::Array::BEGIN@301 # spent 188µs making 1 call to base::import
3022785µs244µs
# spent 25µs (6+19) within YAML::PP::Preserve::Array::BEGIN@302 which was called: # once (6µs+19µs) by main::BEGIN@3 at line 302
use Scalar::Util qw/ reftype blessed /;
# spent 25µs making 1 call to YAML::PP::Preserve::Array::BEGIN@302 # spent 19µs making 1 call to Exporter::import
303
304sub TIEARRAY {
305 my ($class, @items) = @_;
306 my $self = bless {
307 data => [@items],
308 }, $class;
309 return $self;
310}
311
312sub FETCH {
313 my ($self, $i) = @_;
314 return $self->{data}->[ $i ];
315}
316sub FETCHSIZE {
317 my ($self) = @_;
318 return $#{ $self->{data} } + 1;
319}
320
321sub _preserve {
322 my ($val) = @_;
323 if (ref $val and not blessed($val)) {
324 if (reftype($val) eq 'HASH' and not tied %$val) {
325 tie %$val, 'YAML::PP::Preserve::Hash', %$val;
326 }
327 elsif (reftype($val) eq 'ARRAY' and not tied @$val) {
328 tie @$val, 'YAML::PP::Preserve::Array', @$val;
329 }
330 }
331 return $val;
332}
333
334sub STORE {
335 my ($self, $i, $val) = @_;
336 _preserve($val);
337 $self->{data}->[ $i ] = $val;
338}
339sub PUSH {
340 my ($self, @args) = @_;
341 push @{ $self->{data} }, map { _preserve $_ } @args;
342}
343sub STORESIZE {
344 my ($self, $i) = @_;
345 $#{ $self->{data} } = $i - 1;
346}
347sub DELETE {
348 my ($self, $i) = @_;
349 delete $self->{data}->[ $i ];
350}
351sub EXISTS {
352 my ($self, $i) = @_;
353 return exists $self->{data}->[ $i ];
354}
355sub CLEAR {
356 my ($self) = @_;
357 $self->{data} = [];
358}
359sub SHIFT {
360 my ($self) = @_;
361 shift @{ $self->{data} };
362}
363sub UNSHIFT {
364 my ($self, @args) = @_;
365 unshift @{ $self->{data} }, map { _preserve $_ } @args;
366}
367sub SPLICE {
368 my ($self, $offset, $length, @args) = @_;
369 splice @{ $self->{data} }, $offset, $length, map { _preserve $_ } @args;
370}
371sub EXTEND {}
372
373
374package YAML::PP::Preserve::Scalar;
375
376use overload
37710s
# spent 43µs (12+31) within YAML::PP::Preserve::Scalar::BEGIN@377 which was called: # once (12µs+31µs) by main::BEGIN@3 at line 381
fallback => 1,
378 '+' => \&value,
379 '""' => \&value,
380 'bool' => \&value,
3811182µs274µs ;
# spent 43µs making 1 call to YAML::PP::Preserve::Scalar::BEGIN@377 # spent 31µs making 1 call to overload::import
382sub new {
383 my ($class, %args) = @_;
384 my $self = {
385 %args,
386 };
387 bless $self, $class;
388}
389sub value { $_[0]->{value} }
390sub tag { $_[0]->{tag} }
391sub style { $_[0]->{style} || 0 }
392sub alias { $_[0]->{alias} }
393
39416µs1;
395
396__END__
 
# spent 2µs within YAML::PP::Preserve::Array::__ANON__ which was called: # once (2µs+0s) by YAML::PP::Preserve::Array::BEGIN@300 at line 300
sub YAML::PP::Preserve::Array::__ANON__; # xsub
# spent 2µs within YAML::PP::Preserve::Hash::__ANON__ which was called: # once (2µs+0s) by YAML::PP::Preserve::Hash::BEGIN@226 at line 226
sub YAML::PP::Preserve::Hash::__ANON__; # xsub