Simplify flow chart

This commit is contained in:
2025-08-25 16:00:58 -04:00
parent 611bccfb9b
commit 81814fa590

View File

@@ -23,22 +23,15 @@ WeaselJSON is a high-performance, streaming JSON parser that uses callbacks inst
```mermaid ```mermaid
flowchart TD flowchart TD
A[Need to parse JSON?] --> B{Do you have memory constraints<br/>or do you want to parse partial data?} A[Need to parse JSON?] --> B{Do you want to parse<br/>partial JSON documents?}
B -->|No| C{Is performance critical<br/>and data fits in memory?} B -->|Yes| C[WeaselJSON<br/>Streaming parser<br/>Constant memory usage]
B -->|Yes| D{Can you control<br/>how the JSON is laid out?}
C -->|No| E[SimdJSON DOM API<br/>Fast and easy to use] B -->|No| D{Is maximum performance<br/>critical?}
C -->|Yes| F{Are you OK with potential<br/>performance traps?}
F -->|Yes| G[SimdJSON On-Demand<br/>Very fast<br/>Nice API<br/>Forward-only traversal] D -->|No| E[SimdJSON DOM<br/>Easy to use<br/>Good performance]
F -->|No| H[Consider weaseljson<br/>if you can deal with callbacks]
D -->|No| I{Can you preprocess data<br/>or make multiple requests?} D -->|Yes| F[SimdJSON On-Demand<br/>Fastest option<br/>Forward-only traversal]
D -->|Yes| J[WeaselJSON<br/>Streaming performance<br/>Constant memory usage<br/>Harder to use]
I -->|No| K[Use SimdJSON DOM<br/>Deal with the tradeoffs]
I -->|Yes| L[WeaselJSON with<br/>data preprocessing]
``` ```
## When to Use What ## When to Use What