| 333 | } |
| 334 | |
| 335 | void TJsonValue::Clear() noexcept { |
| 336 | switch (Type) { |
| 337 | case JSON_STRING: |
| 338 | Value.String.~TString(); |
| 339 | break; |
| 340 | case JSON_MAP: |
| 341 | delete Value.Map; |
| 342 | break; |
| 343 | case JSON_ARRAY: |
| 344 | delete Value.Array; |
| 345 | break; |
| 346 | case JSON_UNDEFINED: |
| 347 | case JSON_NULL: |
| 348 | case JSON_BOOLEAN: |
| 349 | case JSON_INTEGER: |
| 350 | case JSON_UINTEGER: |
| 351 | case JSON_DOUBLE: |
| 352 | break; |
| 353 | } |
| 354 | Zero(Value); |
| 355 | Type = JSON_UNDEFINED; |
| 356 | } |
| 357 | |
| 358 | TJsonValue& TJsonValue::operator[](const size_t idx) { |
| 359 | SetType(JSON_ARRAY); |