← 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/JSON/Schema/Modern/Vocabulary/FormatAnnotation.pm
StatementsExecuted 2816 statements in 4.26ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
2480112.18ms2.18msJSON::Schema::Modern::Vocabulary::FormatAnnotation::::keywordsJSON::Schema::Modern::Vocabulary::FormatAnnotation::keywords
5011198µs718µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::_traverse_keyword_formatJSON::Schema::Modern::Vocabulary::FormatAnnotation::_traverse_keyword_format
11136µs41µsModule::Runtime::::BEGIN@1.314 Module::Runtime::BEGIN@1.314
11120µs958µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@11JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@11
11118µs39µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@14JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@14
11115µs47µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@13JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@13
11114µs14µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@9JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@9
11112µs283µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@10JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@10
11111µs23µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@16JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@16
11111µs62µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@17JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@17
11110µs32µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@18JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@18
1119µs21µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@15JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@15
1119µs208µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@19JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@19
1118µs48µsModule::Runtime::::BEGIN@2.315 Module::Runtime::BEGIN@2.315
1117µs155µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::BEGIN@12JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@12
5113µs3µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::evaluation_orderJSON::Schema::Modern::Vocabulary::FormatAnnotation::evaluation_order
1111µs1µsJSON::Schema::Modern::Vocabulary::FormatAnnotation::::vocabularyJSON::Schema::Modern::Vocabulary::FormatAnnotation::vocabulary
0000s0sJSON::Schema::Modern::Vocabulary::FormatAnnotation::::_eval_keyword_formatJSON::Schema::Modern::Vocabulary::FormatAnnotation::_eval_keyword_format
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1240µs246µs
# spent 41µs (36+5) within Module::Runtime::BEGIN@1.314 which was called: # once (36µs+5µs) by Module::Runtime::require_module at line 1
use strict;
# spent 41µs making 1 call to Module::Runtime::BEGIN@1.314 # spent 5µs making 1 call to strict::import
2253µs288µs
# spent 48µs (8+40) within Module::Runtime::BEGIN@2.315 which was called: # once (8µs+40µs) by Module::Runtime::require_module at line 2
use warnings;
# spent 48µs making 1 call to Module::Runtime::BEGIN@2.315 # spent 40µs making 1 call to warnings::import
3package JSON::Schema::Modern::Vocabulary::FormatAnnotation;
4# vim: set ts=8 sts=2 sw=2 tw=100 et :
5# ABSTRACT: Implementation of the JSON Schema Format-Annotation vocabulary
6
711µsour $VERSION = '0.552';
8
9239µs114µs
# spent 14µs within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@9 which was called: # once (14µs+0s) by Module::Runtime::require_module at line 9
use 5.020;
10232µs2554µs
# spent 283µs (12+271) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@10 which was called: # once (12µs+271µs) by Module::Runtime::require_module at line 10
use Moo;
# spent 283µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@10 # spent 271µs making 1 call to Moo::import
11338µs31.90ms
# spent 958µs (20+938) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@11 which was called: # once (20µs+938µs) by Module::Runtime::require_module at line 11
use strictures 2;
# spent 958µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@11 # spent 918µs making 1 call to strictures::import # spent 19µs making 1 call to strictures::VERSION
12243µs2303µs
# spent 155µs (7+148) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@12 which was called: # once (7µs+148µs) by Module::Runtime::require_module at line 12
use experimental qw(signatures postderef);
# spent 155µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@12 # spent 148µs making 1 call to experimental::import
13232µs250µs
# spent 47µs (15+32) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@13 which was called: # once (15µs+32µs) by Module::Runtime::require_module at line 13
use if "$]" >= 5.022, experimental => 're_strict';
# spent 47µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@13 # spent 3µs making 1 call to if::import
14231µs241µs
# spent 39µs (18+21) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@14 which was called: # once (18µs+21µs) by Module::Runtime::require_module at line 14
no if "$]" >= 5.031009, feature => 'indirect';
# spent 39µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@14 # spent 2µs making 1 call to if::unimport
15228µs221µs
# spent 21µs (9+12) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@15 which was called: # once (9µs+12µs) by Module::Runtime::require_module at line 15
no if "$]" >= 5.033001, feature => 'multidimensional';
# spent 21µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@15 # spent 0s making 1 call to if::unimport
16233µs223µs
# spent 23µs (11+12) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@16 which was called: # once (11µs+12µs) by Module::Runtime::require_module at line 16
no if "$]" >= 5.033006, feature => 'bareword_filehandles';
# spent 23µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@16 # spent 0s making 1 call to if::unimport
17223µs2113µs
# spent 62µs (11+51) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@17 which was called: # once (11µs+51µs) by Module::Runtime::require_module at line 17
use JSON::Schema::Modern::Utilities qw(is_type E A assert_keyword_type);
# spent 62µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@17 # spent 51µs making 1 call to Exporter::import
18223µs254µs
# spent 32µs (10+22) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@18 which was called: # once (10µs+22µs) by Module::Runtime::require_module at line 18
use Feature::Compat::Try;
# spent 32µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@18 # spent 22µs making 1 call to Feature::Compat::Try::import
192242µs2407µs
# spent 208µs (9+199) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@19 which was called: # once (9µs+199µs) by Module::Runtime::require_module at line 19
use namespace::clean;
# spent 208µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAnnotation::BEGIN@19 # spent 199µs making 1 call to namespace::clean::import
20
2111µs1488µswith 'JSON::Schema::Modern::Vocabulary';
# spent 488µs making 1 call to Moo::with
22
23
# spent 1µs within JSON::Schema::Modern::Vocabulary::FormatAnnotation::vocabulary which was called: # once (1µs+0s) by JSON::Schema::Modern::__ANON__[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/JSON/Schema/Modern.pm:670] at line 666 of JSON/Schema/Modern.pm
sub vocabulary {
2413µs 'https://json-schema.org/draft/2019-09/vocab/format' => 'draft2019-09',
25 'https://json-schema.org/draft/2020-12/vocab/format-annotation' => 'draft2020-12';
26}
27
2859µs
# spent 3µs within JSON::Schema::Modern::Vocabulary::FormatAnnotation::evaluation_order which was called 5 times, avg 600ns/call: # 5 times (3µs+0s) by JSON::Schema::Modern::Vocabulary::Core::CORE:sort at line 322 of JSON/Schema/Modern/Vocabulary/Core.pm, avg 600ns/call
sub evaluation_order { 3 }
29
30
# spent 2.18ms within JSON::Schema::Modern::Vocabulary::FormatAnnotation::keywords which was called 2480 times, avg 880ns/call: # 2480 times (2.18ms+0s) by JSON::Schema::Modern::_traverse_subschema at line 447 of JSON/Schema/Modern.pm, avg 880ns/call
sub keywords {
3124803.39ms qw(format);
32}
33
3420030µs
# spent 718µs (198+520) within JSON::Schema::Modern::Vocabulary::FormatAnnotation::_traverse_keyword_format which was called 50 times, avg 14µs/call: # 50 times (198µs+520µs) by JSON::Schema::Modern::_traverse_subschema at line 457 of JSON/Schema/Modern.pm, avg 14µs/call
sub _traverse_keyword_format ($self, $schema, $state) {
355058µs50520µs return if not assert_keyword_type($state, $schema, 'string');
# spent 520µs making 50 calls to JSON::Schema::Modern::Utilities::assert_keyword_type, avg 10µs/call
365080µs return 1;
37}
38
39sub _eval_keyword_format ($self, $data, $schema, $state) {
40 return A($state, $schema->{format});
41}
42
4317µs1;
44
45122µs1343µs__END__