| 126 | |
| 127 | // object / array — try JSON parse |
| 128 | if (ptype == "object" || ptype == "array") { |
| 129 | try { return json::parse(val); } catch (...) { return val; } |
| 130 | } |
| 131 | |
| 132 | // fallback: try JSON parse, then return as string |
| 133 | try { return json::parse(val); } catch (...) { return val; } |
| 134 | } |
| 135 | |
| 136 | // ─── Removal tracking ─────────────────────────────────────────────────── |
| 137 | |
| 138 | struct Span { |
| 139 | size_t start, end; |