simdjson/fuzz
John Keiser 8e7d1a5f09
Separate document state from ParsedJson
This creates a "document" class with only user-facing document state (no parser internals).

- document: user-facing document state
- document::iterator: iterator (equivalent of ParsedJsonIterator)
- document::parser: parser state plus a "docked" document we parse into (equivalent of ParsedJson)

Usage:

```c++
auto doc = simdjson::document::parse(buf, len); // less efficient but simplest
```

```c++
simdjson::document::parser parser; // reusable parser
parser.allocate_capacity(len);
simdjson::document* doc = parser.parse(buf, len); // pointer to doc inside parser
doc = parser.parse(buf2, len); // reuses all buffers and overwrites doc; more efficient
```
2020-02-07 10:02:36 -08:00
..
CMakeLists.txt add new fuzzers for print_json and dump_raw_tape (#416) 2019-12-27 13:42:44 -05:00
Fuzzing.md Add fuzzer badge and improve fuzzer documentation (#367) 2019-11-13 16:57:20 +01:00
NullBuffer.h add new fuzzers for print_json and dump_raw_tape (#416) 2019-12-27 13:42:44 -05:00
build_corpus.sh add ossfuzz support (#362) 2019-11-08 10:32:43 -05:00
build_fuzzer_variants.sh add new fuzzers for print_json and dump_raw_tape (#416) 2019-12-27 13:42:44 -05:00
build_like_ossfuzz.sh add ossfuzz support (#362) 2019-11-08 10:32:43 -05:00
fuzz_dump.cpp add new fuzzers for print_json and dump_raw_tape (#416) 2019-12-27 13:42:44 -05:00
fuzz_dump_raw_tape.cpp Separate document state from ParsedJson 2020-02-07 10:02:36 -08:00
fuzz_minify.cpp add basic fuzzers (#348) 2019-10-28 14:46:57 -04:00
fuzz_parser.cpp add basic fuzzers (#348) 2019-10-28 14:46:57 -04:00
fuzz_print_json.cpp add new fuzzers for print_json and dump_raw_tape (#416) 2019-12-27 13:42:44 -05:00
main.cpp add ossfuzz support (#362) 2019-11-08 10:32:43 -05:00
measure_coverage.sh add new fuzzers for print_json and dump_raw_tape (#416) 2019-12-27 13:42:44 -05:00
ossfuzz.sh Separate document state from ParsedJson 2020-02-07 10:02:36 -08:00