| Filename | /Users/ether/.perlbrew/libs/36.0@std/lib/perl5/JSON/Schema/Modern/Vocabulary/MetaData.pm |
| Statements | Executed 577988 statements in 406ms |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 94075 | 2 | 1 | 196ms | 196ms | JSON::Schema::Modern::Vocabulary::MetaData::keywords |
| 32214 | 3 | 2 | 113ms | 8.00s | JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_title |
| 5174 | 1 | 1 | 16.2ms | 1.20s | JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_description |
| 1180 | 1 | 1 | 4.40ms | 350ms | JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_default |
| 150 | 2 | 2 | 456µs | 2.48ms | JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_deprecated |
| 131 | 2 | 2 | 425µs | 1.66ms | JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_title |
| 135 | 1 | 1 | 370µs | 2.64ms | JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_readOnly |
| 97 | 1 | 1 | 249µs | 1.38ms | JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_description |
| 98 | 1 | 1 | 63µs | 63µs | JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_default |
| 1 | 1 | 1 | 46µs | 50µs | Module::Runtime::BEGIN@1.318 |
| 1 | 1 | 1 | 36µs | 249µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@18 |
| 1 | 1 | 1 | 26µs | 928µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@11 |
| 1 | 1 | 1 | 26µs | 39µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@16 |
| 1 | 1 | 1 | 17µs | 41µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@13 |
| 1 | 1 | 1 | 17µs | 33µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@15 |
| 1 | 1 | 1 | 13µs | 13µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@9 |
| 1 | 1 | 1 | 13µs | 53µs | Module::Runtime::BEGIN@2.319 |
| 1 | 1 | 1 | 10µs | 297µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@10 |
| 1 | 1 | 1 | 10µs | 37µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@14 |
| 1 | 1 | 1 | 9µs | 140µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@12 |
| 1 | 1 | 1 | 7µs | 65µs | JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@17 |
| 5 | 1 | 1 | 4µs | 4µs | JSON::Schema::Modern::Vocabulary::MetaData::evaluation_order |
| 1 | 1 | 1 | 1µs | 1µs | JSON::Schema::Modern::Vocabulary::MetaData::vocabulary |
| 0 | 0 | 0 | 0s | 0s | JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_deprecated |
| 0 | 0 | 0 | 0s | 0s | JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_examples |
| 0 | 0 | 0 | 0s | 0s | JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_readOnly |
| 0 | 0 | 0 | 0s | 0s | JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_writeOnly |
| 0 | 0 | 0 | 0s | 0s | JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_examples |
| 0 | 0 | 0 | 0s | 0s | JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_writeOnly |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | 2 | 48µs | 2 | 54µs | # spent 50µs (46+4) within Module::Runtime::BEGIN@1.318 which was called:
# once (46µs+4µs) by Module::Runtime::require_module at line 1 # spent 50µs making 1 call to Module::Runtime::BEGIN@1.318
# spent 4µs making 1 call to strict::import |
| 2 | 2 | 57µs | 2 | 93µs | # spent 53µs (13+40) within Module::Runtime::BEGIN@2.319 which was called:
# once (13µs+40µs) by Module::Runtime::require_module at line 2 # spent 53µs making 1 call to Module::Runtime::BEGIN@2.319
# spent 40µs making 1 call to warnings::import |
| 3 | package JSON::Schema::Modern::Vocabulary::MetaData; | ||||
| 4 | # vim: set ts=8 sts=2 sw=2 tw=100 et : | ||||
| 5 | # ABSTRACT: Implementation of the JSON Schema Meta-Data vocabulary | ||||
| 6 | |||||
| 7 | 1 | 0s | our $VERSION = '0.552'; | ||
| 8 | |||||
| 9 | 2 | 52µs | 1 | 13µs | # spent 13µs within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@9 which was called:
# once (13µs+0s) by Module::Runtime::require_module at line 9 # spent 13µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@9 |
| 10 | 2 | 41µs | 2 | 584µs | # spent 297µs (10+287) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@10 which was called:
# once (10µs+287µs) by Module::Runtime::require_module at line 10 # spent 297µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@10
# spent 287µs making 1 call to Moo::import |
| 11 | 3 | 46µs | 3 | 1.83ms | # spent 928µs (26+902) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@11 which was called:
# once (26µs+902µs) by Module::Runtime::require_module at line 11 # spent 928µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@11
# spent 875µs making 1 call to strictures::import
# spent 27µs making 1 call to strictures::VERSION |
| 12 | 2 | 48µs | 2 | 271µs | # spent 140µs (9+131) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@12 which was called:
# once (9µs+131µs) by Module::Runtime::require_module at line 12 # spent 140µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@12
# spent 131µs making 1 call to experimental::import |
| 13 | 2 | 47µs | 2 | 44µs | # spent 41µs (17+24) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@13 which was called:
# once (17µs+24µs) by Module::Runtime::require_module at line 13 # spent 41µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@13
# spent 3µs making 1 call to if::import |
| 14 | 2 | 32µs | 2 | 39µs | # spent 37µs (10+27) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@14 which was called:
# once (10µs+27µs) by Module::Runtime::require_module at line 14 # spent 37µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@14
# spent 2µs making 1 call to if::unimport |
| 15 | 2 | 42µs | 2 | 35µs | # spent 33µs (17+16) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@15 which was called:
# once (17µs+16µs) by Module::Runtime::require_module at line 15 # spent 33µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@15
# spent 2µs making 1 call to if::unimport |
| 16 | 2 | 34µs | 2 | 39µs | # spent 39µs (26+13) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@16 which was called:
# once (26µs+13µs) by Module::Runtime::require_module at line 16 # spent 39µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@16
# spent 0s making 1 call to if::unimport |
| 17 | 2 | 18µs | 2 | 123µs | # spent 65µs (7+58) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@17 which was called:
# once (7µs+58µs) by Module::Runtime::require_module at line 17 # spent 65µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@17
# spent 58µs making 1 call to Exporter::import |
| 18 | 2 | 350µs | 2 | 462µs | # spent 249µs (36+213) within JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@18 which was called:
# once (36µs+213µs) by Module::Runtime::require_module at line 18 # spent 249µs making 1 call to JSON::Schema::Modern::Vocabulary::MetaData::BEGIN@18
# spent 213µs making 1 call to namespace::clean::import |
| 19 | |||||
| 20 | 1 | 1µs | 1 | 323µs | with 'JSON::Schema::Modern::Vocabulary'; # spent 323µs making 1 call to Moo::with |
| 21 | |||||
| 22 | # spent 1µs within JSON::Schema::Modern::Vocabulary::MetaData::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 | ||||
| 23 | 1 | 3µs | 'https://json-schema.org/draft/2019-09/vocab/meta-data' => 'draft2019-09', | ||
| 24 | 'https://json-schema.org/draft/2020-12/vocab/meta-data' => 'draft2020-12'; | ||||
| 25 | } | ||||
| 26 | |||||
| 27 | 5 | 8µs | # spent 4µs within JSON::Schema::Modern::Vocabulary::MetaData::evaluation_order which was called 5 times, avg 800ns/call:
# 5 times (4µs+0s) by JSON::Schema::Modern::Vocabulary::Core::CORE:sort at line 322 of JSON/Schema/Modern/Vocabulary/Core.pm, avg 800ns/call | ||
| 28 | |||||
| 29 | 282225 | 40.8ms | # spent 196ms within JSON::Schema::Modern::Vocabulary::MetaData::keywords which was called 94075 times, avg 2µs/call:
# 91595 times (191ms+0s) by JSON::Schema::Modern::_eval_subschema at line 535 of JSON/Schema/Modern.pm, avg 2µs/call
# 2480 times (4.89ms+0s) by JSON::Schema::Modern::_traverse_subschema at line 447 of JSON/Schema/Modern.pm, avg 2µs/call | ||
| 30 | return ( | ||||
| 31 | 94075 | 217ms | qw(title description default), | ||
| 32 | $spec_version ne 'draft7' ? 'deprecated' : (), | ||||
| 33 | qw(readOnly writeOnly examples), | ||||
| 34 | ); | ||||
| 35 | } | ||||
| 36 | |||||
| 37 | 524 | 67µs | # spent 1.66ms (425µs+1.23) within JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_title which was called 131 times, avg 13µs/call:
# 97 times (262µs+864µs) by JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_description at line 46, avg 12µs/call
# 34 times (163µs+369µs) by JSON::Schema::Modern::_traverse_subschema at line 457 of JSON/Schema/Modern.pm, avg 16µs/call | ||
| 38 | 131 | 106µs | 131 | 1.23ms | return if not assert_keyword_type($state, $schema, 'string'); # spent 1.23ms making 131 calls to JSON::Schema::Modern::Utilities::assert_keyword_type, avg 9µs/call |
| 39 | 131 | 237µs | return 1; | ||
| 40 | } | ||||
| 41 | |||||
| 42 | 161070 | 27.3ms | # spent 8.00s (113ms+7.88) within JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_title which was called 32214 times, avg 248µs/call:
# 25860 times (94.1ms+6.37s) by JSON::Schema::Modern::_eval_subschema at line 548 of JSON/Schema/Modern.pm, avg 250µs/call
# 5174 times (13.9ms+1.17s) by JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_description at line 48, avg 229µs/call
# 1180 times (4.88ms+341ms) by JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_default at line 52, avg 293µs/call | ||
| 43 | 32214 | 98.5ms | 32214 | 7.88s | annotate_self($state, $schema); # spent 7.88s making 32214 calls to JSON::Schema::Modern::Utilities::annotate_self, avg 245µs/call |
| 44 | } | ||||
| 45 | |||||
| 46 | 97 | 210µs | 97 | 1.13ms | # spent 1.38ms (249µs+1.13) within JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_description which was called 97 times, avg 14µs/call:
# 97 times (249µs+1.13ms) by JSON::Schema::Modern::_traverse_subschema at line 457 of JSON/Schema/Modern.pm, avg 14µs/call # spent 1.13ms making 97 calls to JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_title, avg 12µs/call |
| 47 | |||||
| 48 | 5174 | 15.8ms | 5174 | 1.19s | # spent 1.20s (16.2ms+1.19) within JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_description which was called 5174 times, avg 233µs/call:
# 5174 times (16.2ms+1.19s) by JSON::Schema::Modern::_eval_subschema at line 548 of JSON/Schema/Modern.pm, avg 233µs/call # spent 1.19s making 5174 calls to JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_title, avg 229µs/call |
| 49 | |||||
| 50 | 98 | 144µs | # spent 63µs within JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_default which was called 98 times, avg 643ns/call:
# 98 times (63µs+0s) by JSON::Schema::Modern::_traverse_subschema at line 457 of JSON/Schema/Modern.pm, avg 643ns/call | ||
| 51 | |||||
| 52 | 1180 | 4.48ms | 1180 | 345ms | # spent 350ms (4.40+345) within JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_default which was called 1180 times, avg 297µs/call:
# 1180 times (4.40ms+345ms) by JSON::Schema::Modern::_eval_subschema at line 548 of JSON/Schema/Modern.pm, avg 297µs/call # spent 345ms making 1180 calls to JSON::Schema::Modern::Vocabulary::MetaData::_eval_keyword_title, avg 293µs/call |
| 53 | |||||
| 54 | 600 | 98µs | # spent 2.48ms (456µs+2.03) within JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_deprecated which was called 150 times, avg 17µs/call:
# 135 times (415µs+1.86ms) by JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_readOnly at line 61, avg 17µs/call
# 15 times (41µs+169µs) by JSON::Schema::Modern::_traverse_subschema at line 457 of JSON/Schema/Modern.pm, avg 14µs/call | ||
| 55 | 150 | 154µs | 150 | 2.03ms | return if not assert_keyword_type($state, $schema, 'boolean'); # spent 2.03ms making 150 calls to JSON::Schema::Modern::Utilities::assert_keyword_type, avg 14µs/call |
| 56 | 150 | 258µs | return 1; | ||
| 57 | } | ||||
| 58 | |||||
| 59 | sub _eval_keyword_deprecated { shift->_eval_keyword_title(@_) } | ||||
| 60 | |||||
| 61 | 135 | 326µs | 135 | 2.27ms | # spent 2.64ms (370µs+2.27) within JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_readOnly which was called 135 times, avg 20µs/call:
# 135 times (370µs+2.27ms) by JSON::Schema::Modern::_traverse_subschema at line 457 of JSON/Schema/Modern.pm, avg 20µs/call # spent 2.27ms making 135 calls to JSON::Schema::Modern::Vocabulary::MetaData::_traverse_keyword_deprecated, avg 17µs/call |
| 62 | |||||
| 63 | sub _eval_keyword_readOnly { shift->_eval_keyword_title(@_) } | ||||
| 64 | |||||
| 65 | sub _traverse_keyword_writeOnly { shift->_traverse_keyword_deprecated(@_) } | ||||
| 66 | |||||
| 67 | sub _eval_keyword_writeOnly { shift->_eval_keyword_title(@_) } | ||||
| 68 | |||||
| 69 | sub _traverse_keyword_examples ($self, $schema, $state) { | ||||
| 70 | return if not assert_keyword_type($state, $schema, 'array'); | ||||
| 71 | return 1; | ||||
| 72 | } | ||||
| 73 | |||||
| 74 | sub _eval_keyword_examples { shift->_eval_keyword_title(@_) } | ||||
| 75 | |||||
| 76 | 1 | 5µs | 1; | ||
| 77 | |||||
| 78 | 1 | 15µs | 1 | 168µs | __END__ # spent 168µs making 1 call to B::Hooks::EndOfScope::XS::__ANON__[B/Hooks/EndOfScope/XS.pm:26] |