references/apiPatterns.md。RyanJsonInitHooks。RyanJsonStrictObjectKeyCheck、RyanJsonDefaultAddAtHead。| 场景 | 推荐路径 | 关键风险 |
|---|---|---|
| 读取配置 | Parse + Get + IsXXX | 未判型直接取值 |
| 周期上报 | Create + Add + PrintPreallocated(..., RyanJsonFalse, ...) | 缓冲不足、清理遗漏 |
| 同类型更新 | Get + Change*Value | 跨类型误用 Change |
| 跨类型更新 | Create* + ReplaceBy* | Replace 失败后泄漏 |
| 子树迁移 | Detach* + Add/Insert | detach 后未接管 |
| 传输压缩 | Print(format=false) | 误把 Minify 当传输主路径 |
| 文本清洗 | Minify | \0 终止符假设错误 |
Replace 失败不消费 newItem,调用方需复用或释放。Add/Insert 与 Replace 失败语义不能混用。RyanJsonDefaultAddAtHead=true 时,追加顺序可能反转。RyanJson/RyanJsonItem.c:Add/Insert/Replace/Detach 失败语义RyanJson/RyanJson.c:Minify 行为test/unityTest/cases/core/testCreate.c、test/unityTest/cases/core/testReplace.ctest/unityTest/cases/utils/testPrint.c、test/unityTest/cases/utils/testUtils.c