Fuzz introspector: toml
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
167 6 pest::set_call_limit call site: 00006 J::s::o::n::P::a::r::s::e::r::::::::p::a::r::s::e::value
72 391 pest::set_call_limit call site: 00391 PestParser::parse
68 321 ParserState::inc_call_check_limit call site: 00321 bool
66 223 ParserState::match_string call site: 00223 ExprTopDownIterator::next
18 199 Stack::snapshot call site: 00199 Stack::clear_snapshot
15 180 ParserState::match_string call site: 00180 tests::wrong_pos
14 302 ParserState::match_range call site: 00302 number
3 174 ParserState::match_string call site: 00174 fails_with
2 0 EP call site: 00000
2 219 ParserState::match_string call site: 00219 ParserState::handle_token_parse_result
1 197 Stack::snapshot call site: 00197
1 291 ParserState::match_range call site: 00291 fails_with

Fuzzer calltree

0 fuzz_target [function] [call site] 00000
1 std::str::from_utf8 [function] [call site] 00001
1 pest::set_call_limit [function] [call site] 00002
2 ParserState::restore [function] [call site] 00003
3 ParserState::restore [function] [call site] 00004
4 ParserState::restore [function] [call site] 00005
2 v::a::l::i::d::a::t::e::_::t::a::g::_::s::i::l::e::n::t::_::r::u::l::e::s::to_type_hash_map [function] [call site] 00006
3 Result::iter [function] [call site] 00007
4 bench_function [function] [call site] 00008
4 autocorrect::JsonParser::parse [function] [call site] 00009
5 pest::state [function] [call site] 00010
6 Expr::iter_top_down [function] [call site] 00011
7 ExprTopDownIterator::new [function] [call site] 00012
8 ExprTopDownIterator::iterate_expr [function] [call site] 00013
9 FlatPairs::clone [function] [call site] 00015
10 FlatPairs::clone [function] [call site] 00016
11 FlatPairs::clone [function] [call site] 00017
11 FlatPairs::clone [function] [call site] 00018
10 FlatPairs::clone [function] [call site] 00019
9 tests::push [function] [call site] 00020
9 tests::push [function] [call site] 00022
8 FlatPairs::clone [function] [call site] 00026
6 ExprTopDownIterator::any [function] [call site] 00027
6 PrecClimber::get [function] [call site] 00028
7 bench_pairs_iter [function] [call site] 00029
8 bench_function [function] [call site] 00030
8 autocorrect::JsonParser::parse [function] [call site] 00031
8 Result::unwrap [function] [call site] 00032
8 bench_pairs_iter [function] [call site] 00033
8 b::e::n::c::h::_::p::a::i::r::s::_::i::t::e::r::iter_all_pairs [function] [call site] 00034
9 b::e::n::c::h::_::p::a::i::r::s::_::i::t::e::r::iter_all_pairs [function] [call site] 00035
9 Pair::into_inner [function] [call site] 00036
10 Pair::pair [function] [call site] 00037
10 ExprTopDownIterator::new [function] [call site] 00038
11 ExprTopDownIterator::iterate_expr [function] [call site] 00039
11 FlatPairs::clone [function] [call site] 00040
8 FlatPairs::clone [function] [call site] 00042
9 FlatPairs::clone [function] [call site] 00043
9 FlatPairs::clone [function] [call site] 00044
8 bench_function [function] [call site] 00045
8 autocorrect::JsonParser::parse [function] [call site] 00046
8 Result::unwrap [function] [call site] 00047
8 bench_pairs_iter [function] [call site] 00048
8 FlatPairs::clone [function] [call site] 00049
8 Pairs::flatten [function] [call site] 00050
9 ExprTopDownIterator::new [function] [call site] 00051
10 ExprTopDownIterator::iterate_expr [function] [call site] 00052
10 FlatPairs::clone [function] [call site] 00053
8 bench_function [function] [call site] 00054
8 autocorrect::JsonParser::parse [function] [call site] 00055
8 Result::unwrap [function] [call site] 00056
8 bench_pairs_iter [function] [call site] 00057
8 FlatPairs::clone [function] [call site] 00058
8 clone().collect::<Vec<_>> [function] [call site] 00059
8 bench_function [function] [call site] 00060
8 autocorrect::JsonParser::parse [function] [call site] 00061
8 Result::unwrap [function] [call site] 00062
8 bench_pairs_iter [function] [call site] 00063
8 FlatPairs::clone [function] [call site] 00064
8 Pairs::flatten [function] [call site] 00065
8 clone().flatten().collect::<Vec<_>> [function] [call site] 00066
7 v::a::l::i::d::a::t::e::_::t::a::g::_::s::i::l::e::n::t::_::r::u::l::e::s::to_type_hash_map [function] [call site] 00068
6 &mut [call site] 00070
6 Option::to_owned [function] [call site] 00071
6 &mut [call site] 00073
6 Option::to_owned [function] [call site] 00074
6 PrecClimber::get [function] [call site] 00075
7 bench_pairs_iter [function] [call site] 00076
7 v::a::l::i::d::a::t::e::_::t::a::g::_::s::i::l::e::n::t::_::r::u::l::e::s::to_type_hash_map [function] [call site] 00078
6 child_modifies_state [function] [call site] 00079
7 Expr::iter_top_down [function] [call site] 00080
7 ExprTopDownIterator::any [function] [call site] 00081
7 PrecClimber::get [function] [call site] 00082
7 &mut [call site] 00084
7 Option::to_owned [function] [call site] 00085
7 &mut [call site] 00087
7 Option::to_owned [function] [call site] 00088
7 PrecClimber::get [function] [call site] 00089
7 child_modifies_state [function] [call site] 00090
7 &mut [call site] 00091
7 Option::to_owned [function] [call site] 00092
6 &mut [call site] 00094
6 Option::to_owned [function] [call site] 00095
5 J::s::o::n::P::a::r::s::e::r::::::::p::a::r::s::e::json [function] [call site] 00097
6 J::s::o::n::P::a::r::s::e::r::::::::p::a::r::s::e::value [function] [call site] 00098
7 Result::rule [function] [call site] 00099
8 convert_node [function] [call site] 00100
9 Expr::Str [function] [call site] 00101
9 Expr::Insens [function] [call site] 00102
9 Expr::Range [function] [call site] 00103
9 Expr::Ident [function] [call site] 00104
9 Expr::PeekSlice [function] [call site] 00105
9 Expr::PosPred [function] [call site] 00106
9 ExprTopDownIterator::new [function] [call site] 00107
10 ExprTopDownIterator::iterate_expr [function] [call site] 00108
10 FlatPairs::clone [function] [call site] 00109
9 convert_node [function] [call site] 00110
9 Expr::NegPred [function] [call site] 00111
9 ExprTopDownIterator::new [function] [call site] 00112
9 convert_node [function] [call site] 00113
9 Expr::Seq [function] [call site] 00114
9 ExprTopDownIterator::new [function] [call site] 00115
9 convert_node [function] [call site] 00116
9 ExprTopDownIterator::new [function] [call site] 00117
9 convert_node [function] [call site] 00118
9 Expr::Choice [function] [call site] 00119
9 ExprTopDownIterator::new [function] [call site] 00120
9 convert_node [function] [call site] 00121
9 ExprTopDownIterator::new [function] [call site] 00122
9 convert_node [function] [call site] 00123
9 Expr::Opt [function] [call site] 00124
9 ExprTopDownIterator::new [function] [call site] 00125
9 convert_node [function] [call site] 00126
9 Expr::Rep [function] [call site] 00127
9 ExprTopDownIterator::new [function] [call site] 00128
9 convert_node [function] [call site] 00129
9 Expr::RepOnce [function] [call site] 00130
9 ExprTopDownIterator::new [function] [call site] 00131
9 convert_node [function] [call site] 00132
9 Expr::RepExact [function] [call site] 00133
9 ExprTopDownIterator::new [function] [call site] 00134
9 convert_node [function] [call site] 00135
9 Expr::RepMin [function] [call site] 00136
9 ExprTopDownIterator::new [function] [call site] 00137
9 convert_node [function] [call site] 00138
9 Expr::RepMax [function] [call site] 00139
9 ExprTopDownIterator::new [function] [call site] 00140
9 convert_node [function] [call site] 00141
9 Expr::RepMinMax [function] [call site] 00142
9 ExprTopDownIterator::new [function] [call site] 00143
9 convert_node [function] [call site] 00144
9 Expr::Push [function] [call site] 00145
9 ExprTopDownIterator::new [function] [call site] 00146
9 convert_node [function] [call site] 00147
9 Expr::PushLiteral [function] [call site] 00148
9 Expr::NodeTag [function] [call site] 00149
9 ExprTopDownIterator::new [function] [call site] 00150
9 convert_node [function] [call site] 00151
5 J::s::o::n::P::a::r::s::e::r::::::::p::a::r::s::e::pair [function] [call site] 00167
6 Result::rule [function] [call site] 00168
6 tests::long_common_sequence [function] [call site] 00169
6 ParserState::match_string [function] [call site] 00173
7 tests::wrong_pos [function] [call site] 00174
8 fails_with [function] [call site] 00175
9 Vm::parse [function] [call site] 00176
9 Result::unwrap_err [function] [call site] 00177
7 ParserState::match_string [function] [call site] 00178
8 tests::wrong_pos [function] [call site] 00179
8 ParserState::match_string [function] [call site] 00180
8 BorrowedOrArc::from [function] [call site] 00181
9 Self::Borrowed [function] [call site] 00182
9 Self::Owned [function] [call site] 00183
9 ExprTopDownIterator::new [function] [call site] 00184
10 ExprTopDownIterator::iterate_expr [function] [call site] 00185
10 FlatPairs::clone [function] [call site] 00186
8 ParserState::handle_token_parse_result [function] [call site] 00187
9 tests::wrong_pos [function] [call site] 00188
9 ParseAttempts::try_add_new_token [function] [call site] 00189
10 tests::push [function] [call site] 00190
10 target_vec_push_token [function] [call site] 00191
10 test::snapshot_push_clear [function] [call site] 00192
11 Stack::new [function] [call site] 00193
11 tests::push [function] [call site] 00194
11 Stack::snapshot [function] [call site] 00195
12 tests::push [function] [call site] 00196
12 Stack::len [function] [call site] 00197
13 Stack::len [function] [call site] 00198
12 Stack::len [function] [call site] 00199
11 tests::push [function] [call site] 00200
11 Stack::clear_snapshot [function] [call site] 00201
10 test::snapshot_push_clear [function] [call site] 00206
10 test::snapshot_push_clear [function] [call site] 00207
10 tests::push [function] [call site] 00208
10 RulesCallStack::new [function] [call site] 00209
10 target_vec_push_token [function] [call site] 00210
10 tests::push [function] [call site] 00211
10 RulesCallStack::new [function] [call site] 00212
9 ParseAttempts::nullify_expected_tokens [function] [call site] 00213
10 test::snapshot_push_clear [function] [call site] 00214
10 test::snapshot_push_clear [function] [call site] 00215
10 test::snapshot_push_clear [function] [call site] 00216
9 ParseAttempts::try_add_new_token [function] [call site] 00217
7 BorrowedOrArc::from [function] [call site] 00220
7 ParserState::handle_token_parse_result [function] [call site] 00221
5 J::s::o::n::P::a::r::s::e::r::::::::p::a::r::s::e::value [function] [call site] 00228
5 unescape [function] [call site] 00230
6 ExprTopDownIterator::new [function] [call site] 00231
7 ExprTopDownIterator::iterate_expr [function] [call site] 00232
7 FlatPairs::clone [function] [call site] 00233
6 ExprTopDownIterator::next [function] [call site] 00235
7 ExprTopDownIterator::iterate_expr [function] [call site] 00238
7 ExprTopDownIterator::iterate_expr [function] [call site] 00248
6 ExprTopDownIterator::next [function] [call site] 00249
6 tests::push [function] [call site] 00250
6 tests::push [function] [call site] 00251
6 tests::push [function] [call site] 00252
6 tests::push [function] [call site] 00253
6 tests::push [function] [call site] 00254
6 tests::push [function] [call site] 00255
6 tests::push [function] [call site] 00256
6 FlatPairs::clone [function] [call site] 00257
7 FlatPairs::clone [function] [call site] 00258
7 FlatPairs::clone [function] [call site] 00259
6 Stack::len [function] [call site] 00262
6 Stack::len [function] [call site] 00263
6 ExprTopDownIterator::next [function] [call site] 00264
6 u8::from_str_radix [function] [call site] 00265
6 ParserState::checkpoint_ok [function] [call site] 00266
7 Stack::clear_snapshot [function] [call site] 00267
6 tests::push [function] [call site] 00268
6 BorrowedOrArc::from [function] [call site] 00269
7 Self::Borrowed [function] [call site] 00270
7 Self::Owned [function] [call site] 00271
7 ExprTopDownIterator::new [function] [call site] 00272
6 ExprTopDownIterator::next [function] [call site] 00273
6 FlatPairs::clone [function] [call site] 00274
6 take_while [function] [call site] 00275
6 Stack::len [function] [call site] 00277
6 Stack::len [function] [call site] 00278
6 Stack::len [function] [call site] 00279
6 ExprTopDownIterator::next [function] [call site] 00280
6 u32::from_str_radix [function] [call site] 00281
6 ParserState::checkpoint_ok [function] [call site] 00282
6 tests::push [function] [call site] 00283
6 char::from_u32 [function] [call site] 00284
6 tests::push [function] [call site] 00285
5 J::s::o::n::P::a::r::s::e::r::::::::p::a::r::s::e::hex [function] [call site] 00288
6 ParserState::match_range [function] [call site] 00289
7 ParserState::position [function] [call site] 00290
7 tests::wrong_pos [function] [call site] 00291
8 fails_with [function] [call site] 00292
7 ParserState::match_range [function] [call site] 00293
8 ParserState::position [function] [call site] 00294
8 tests::wrong_pos [function] [call site] 00295
8 ParserState::match_range [function] [call site] 00296
8 ParserState::handle_token_parse_result [function] [call site] 00297
7 ParserState::handle_token_parse_result [function] [call site] 00300
6 ParseResult::or_else [function] [call site] 00303
6 ParserState::match_range [function] [call site] 00304
6 ParserState::match_range [function] [call site] 00306
5 J::s::o::n::P::a::r::s::e::r::::::::p::a::r::s::e::int [function] [call site] 00309
6 ParserState::match_string [function] [call site] 00310
6 ParseResult::or_else [function] [call site] 00311
6 tests::long_common_sequence [function] [call site] 00312
6 ParserState::match_range [function] [call site] 00313
6 ParseResult::and_then [function] [call site] 00314
6 ParserState::repeat [function] [call site] 00315
7 ParserState::inc_call_check_limit [function] [call site] 00316
8 CallLimitTracker::limit_reached [function] [call site] 00317
8 CallLimitTracker::increment_depth [function] [call site] 00320
7 tests::lines_eof [function] [call site] 00322
8 Span::new [function] [call site] 00323
9 PrecClimber::get [function] [call site] 00324
10 bench_pairs_iter [function] [call site] 00325
10 v::a::l::i::d::a::t::e::_::t::a::g::_::s::i::l::e::n::t::_::r::u::l::e::s::to_type_hash_map [function] [call site] 00327
8 Option::unwrap [function] [call site] 00330
8 Span::lines [function] [call site] 00331
9 Span::lines_span [function] [call site] 00332
8 Lines::collect [function] [call site] 00333
8 Span::lines_span [function] [call site] 00334
8 v::a::l::i::d::a::t::e::_::t::a::g::_::s::i::l::e::n::t::_::r::u::l::e::s::to_type_hash_map [function] [call site] 00335
9 Result::iter [function] [call site] 00336
9 v::a::l::i::d::a::t::e::_::t::a::g::_::s::i::l::e::n::t::_::r::u::l::e::s::to_type_hash_map [function] [call site] 00337
9 FlatPairs::clone [function] [call site] 00338
9 HashMap::collect [function] [call site] 00339
8 BorrowedOrArc::as_str [function] [call site] 00340
9 Result::deref [function] [call site] 00341
8 HashMap::collect [function] [call site] 00342
7 tests::lines_eof [function] [call site] 00343
6 ParserState::match_range [function] [call site] 00345
5 J::s::o::n::P::a::r::s::e::r::::::::p::a::r::s::e::exp [function] [call site] 00346
6 tests::long_common_sequence [function] [call site] 00347
6 ParserState::match_string [function] [call site] 00348
6 ParseResult::or_else [function] [call site] 00349
6 ParserState::match_string [function] [call site] 00350
6 ParserState::optional [function] [call site] 00352
7 ParserState::inc_call_check_limit [function] [call site] 00353
7 tests::lines_eof [function] [call site] 00354
6 ParserState::match_string [function] [call site] 00356
6 ParseResult::or_else [function] [call site] 00357
6 ParserState::match_string [function] [call site] 00358
4 Result::unwrap [function] [call site] 00364
4 bench_pairs_iter [function] [call site] 00365
4 b::e::n::c::h::_::p::a::i::r::s::_::i::t::e::r::iter_all_pairs [function] [call site] 00366
4 FlatPairs::clone [function] [call site] 00367
4 bench_function [function] [call site] 00368
4 autocorrect::JsonParser::parse [function] [call site] 00369
4 Result::unwrap [function] [call site] 00370
4 bench_pairs_iter [function] [call site] 00371
4 FlatPairs::clone [function] [call site] 00372
4 Pairs::flatten [function] [call site] 00373
4 bench_function [function] [call site] 00374
4 autocorrect::JsonParser::parse [function] [call site] 00375
4 Result::unwrap [function] [call site] 00376
4 bench_pairs_iter [function] [call site] 00377
4 FlatPairs::clone [function] [call site] 00378
4 clone().collect::<Vec<_>> [function] [call site] 00379
4 bench_function [function] [call site] 00380
4 autocorrect::JsonParser::parse [function] [call site] 00381
4 Result::unwrap [function] [call site] 00382
4 bench_pairs_iter [function] [call site] 00383
4 FlatPairs::clone [function] [call site] 00384
4 Pairs::flatten [function] [call site] 00385
4 clone().flatten().collect::<Vec<_>> [function] [call site] 00386
3 v::a::l::i::d::a::t::e::_::t::a::g::_::s::i::l::e::n::t::_::r::u::l::e::s::to_type_hash_map [function] [call site] 00387
3 FlatPairs::clone [function] [call site] 00388
3 HashMap::collect [function] [call site] 00389
2 PrecClimber::get [function] [call site] 00390
2 HashMap::unwrap_or [function] [call site] 00391
1 toml::TomlParser::parse [function] [call site] 00395
2 PestParser::parse [function] [call site] 00396
3 :: [call site] 00397
3 rules [call site] 00398
3 rules [call site] 00399
3 rules [call site] 00400
3 rules [call site] 00401
3 rules [call site] 00402
3 rules [call site] 00403
3 rules [call site] 00404
3 rules [call site] 00405
3 rules [call site] 00406
3 rules [call site] 00407
3 rules [call site] 00408
3 rules [call site] 00409
3 rules [call site] 00410
3 rules [call site] 00411
3 rules [call site] 00412
3 rules [call site] 00413
3 rules [call site] 00414
3 rules [call site] 00415
3 rules [call site] 00416
3 rules [call site] 00417
3 rules [call site] 00418
3 rules [call site] 00419
3 rules [call site] 00420
3 rules [call site] 00421
3 rules [call site] 00422
3 rules [call site] 00423
3 rules [call site] 00424
3 rules [call site] 00425
3 rules [call site] 00426
3 rules [call site] 00427
3 rules [call site] 00428
3 rules [call site] 00429
3 rules [call site] 00430
3 rules [call site] 00431
3 rules [call site] 00432
3 rules [call site] 00433
3 rules [call site] 00434
3 rules [call site] 00435
3 rules [call site] 00436
3 rules [call site] 00437
3 rules [call site] 00438
3 rules [call site] 00439
3 rules [call site] 00440
3 rules [call site] 00441
3 rules [call site] 00442
3 rules [call site] 00443
3 rules [call site] 00444
3 rules [call site] 00445
3 rules [call site] 00446
3 rules [call site] 00447
3 rules [call site] 00448
3 rules [call site] 00449
3 rules [call site] 00450
3 rules [call site] 00451
3 rules [call site] 00452
3 rules [call site] 00453
3 rules [call site] 00454
3 rules [call site] 00455
3 rules [call site] 00456
3 rules [call site] 00457
3 rules [call site] 00458
3 rules [call site] 00459
3 rules [call site] 00460
3 rules [call site] 00461
3 rules [call site] 00462
3 rules [call site] 00463