|
2 | 2 |
|
3 | 3 | ## Highlights |
4 | 4 |
|
5 | | -- **Multi-Document Parsing:** read a bundle of JSON documents (ndjson) 2-4x faster than doing it |
| 5 | +- **Multi-Document Parsing:** Read a bundle of JSON documents (ndjson) 2-4x faster than doing it |
6 | 6 | individually. [API docs](https://github.com/simdjson/simdjson/blob/master/doc/basics.md#newline-delimited-json-ndjson-and-json-lines) / [Design Details](https://github.com/simdjson/simdjson/blob/master/doc/parse_many.md) |
7 | | -- **Simplified API:** The API has been completely revamped for ease of use, from the DOM API to |
8 | | - error handling and error chaining! [Docs](https://github.com/simdjson/simdjson/blob/master/doc/basics.md#the-basics-loading-and-parsing-json-documents) |
9 | | -- **Exact Float Parsing:** simdjson now parses floats flawlessly *without* any performance loss, |
| 7 | +- **Simplified API:** The API has been completely revamped for ease of use, including a new JSON |
| 8 | + navigation API and fluent support for error code *and* exception styles of error handling with a |
| 9 | + single API. [Docs](https://github.com/simdjson/simdjson/blob/master/doc/basics.md#the-basics-loading-and-parsing-json-documents) |
| 10 | +- **Exact Float Parsing:** Now simdjson parses floats flawlessly *without* any performance loss, |
10 | 11 | thanks to [great work by @michaeleisel and @lemire](https://github.com/simdjson/simdjson/pull/558). |
11 | 12 | [Blog Post](https://lemire.me/blog/2020/03/10/fast-float-parsing-in-practice/) |
12 | 13 | - **Even Faster:** The fastest parser got faster! With a [shiny new UTF-8 validator](https://github.com/simdjson/simdjson/pull/387) |
|
21 | 22 | it will adjust automatically when it encounters larger files. |
22 | 23 | - Runtime selection API: We've exposed simdjson's runtime CPU detection and implementation selection |
23 | 24 | as an API, so you can tell what implementation we detected and test with other implementations. |
24 | | - |
| 25 | +- Error handling your way: Whether you use exceptions or check error codes, simdjson lets you handle |
| 26 | + errors in your style. APIs that can fail return simdjson_result<T>, letting you check the error |
| 27 | + code before using the result. But if you are more comfortable with exceptions, skip the error code |
| 28 | + and cast straight to T, and exceptions will be thrown automatically if an error happens. Use the |
| 29 | + same API either way! |
| 30 | +- Error chaining: We also worked to keep non-exception error-handling short and sweet. Instead of |
| 31 | + having to check the error code after every single operation, now you can *chain* JSON navigation |
| 32 | + calls like looking up an object field or array element, or casting to a string, so that you only |
| 33 | + have to check the error code once at the very end. |
0 commit comments