Commit Graph

808 Commits

Author SHA1 Message Date
Benoit Blanchon
08cac13c43 Add more tests for JsonObjectConst 2024-01-08 19:47:36 +01:00
Benoit Blanchon
cc42373367 Fix "no matching function" with JsonObjectConst::operator[]
Fixes #2019
2024-01-03 16:30:44 +01:00
Benoit Blanchon
9dc43d14f3 Set version to 7.0.0 2024-01-03 09:19:34 +01:00
Benoit Blanchon
0e8a236583 Update copyright year 2024-01-03 08:47:06 +01:00
Benoit Blanchon
955815fbfa Fix function returns incomplete class type on IAR (issue #2001)
Ported from 3e1be980d9
2023-12-07 15:51:29 +01:00
Benoit Blanchon
4cd03fbd26 Fix no instance of overloaded function... on IAR (fixes #2001)
Ported from 6ed87029e2
2023-12-07 15:51:29 +01:00
Benoit Blanchon
4774ca3d29 Force inline ZeroTerminatedRamString::size()
Ported from 7517ecb91b
2023-11-06 09:52:17 +01:00
Benoit Blanchon
26b2ff4c0f Reorder StringNode's members to reduce code size 2023-10-09 15:41:20 +02:00
Benoit Blanchon
7e6b89d21f Use only one byte for the string length on 8-bit platforms 2023-10-09 15:21:18 +02:00
Benoit Blanchon
d20e64187b Use only one byte for the reference counter on 8-bit platforms 2023-10-09 14:47:47 +02:00
Benoit Blanchon
86e06c901f Add ARDUINOJSON_SIZEOF_POINTER 2023-10-09 14:40:18 +02:00
Benoit Blanchon
6fe4b9c01d Detect string length overflows 2023-10-09 14:15:55 +02:00
Benoit Blanchon
9b34069a3b Remove obsolete comments 2023-09-25 15:16:41 +02:00
Benoit Blanchon
92c9faf69f Fix 'std::string_view' has not been declared (issue #1967)
Ported from 49e2a8d421
2023-09-13 18:32:38 +02:00
Benoit Blanchon
b20653ee1a Fix 'std::string' has not been declared (issue #1967)
Ported from 259855a87b
2023-09-13 18:31:22 +02:00
Benoit Blanchon
750d53f8c7 Update URLs to point to https://arduinojson.org/v7/ 2023-08-19 16:08:12 +02:00
Benoit Blanchon
51c5f1a73a Fix a Clang-Tidy warning 2023-08-10 19:27:03 +02:00
Benoit Blanchon
ac9b74df65 Show a warning when ARDUINOJSON_ENABLE_STRING_DEDUPLICATION is defined 2023-08-10 18:38:05 +02:00
Benoit Blanchon
305e80c09d Show an error if ARDUINOJSON_SLOT_OFFSET_SIZE is defined 2023-08-10 18:28:38 +02:00
Benoit Blanchon
1d583f68da Add stubs for JSON_ARRAY_SIZE, JSON_OBJECT_SIZE, and JSON_STRING_SIZE 2023-08-10 09:54:47 +02:00
Benoit Blanchon
78399c2d78 Add a stub for createNestedObject() 2023-08-10 09:54:46 +02:00
Benoit Blanchon
8cc645c40c Add a stub for createNestedArray() 2023-08-10 09:54:45 +02:00
Benoit Blanchon
11373af344 Add a stub for add() 2023-08-10 09:54:44 +02:00
Benoit Blanchon
53d54ba9d7 Add a stub for shallowCopy() 2023-08-10 09:54:44 +02:00
Benoit Blanchon
2f31c932d7 Add a stub for memoryUsage() 2023-08-10 09:54:43 +02:00
Benoit Blanchon
93cb3d2fdc Add a stub for BasicJsonDocument 2023-08-10 09:54:42 +02:00
Benoit Blanchon
be5d5300a2 Add a stub for DynamicJsonDocument 2023-08-10 09:54:40 +02:00
Benoit Blanchon
ea5b019552 Add a stub for StaticJsonDocument 2023-08-10 09:54:28 +02:00
Benoit Blanchon
adea7f4131 Extract VariantRefBaseImpl.hpp 2023-08-09 12:08:21 +02:00
Benoit Blanchon
7f459adc4b Remove createNestedArray() and createNestedObject() 2023-08-09 12:08:21 +02:00
Benoit Blanchon
cdc1262127 Remove unused JsonDocument constructor 2023-08-09 11:07:27 +02:00
Benoit Blanchon
f422b7b37d Replace add() with add<T>() (add(T) is still supported) 2023-08-09 10:57:52 +02:00
Benoit Blanchon
7a587ac2e2 Fix some getVariant() that were accidentally renamed to getSlot() 2023-08-09 10:08:40 +02:00
Benoit Blanchon
57454cf97b Don't call shrinkToFit() for deserializeXxx(JsonVariant) 2023-08-01 18:48:10 +02:00
Benoit Blanchon
af6954c224 serializeXxx() sets std::string and String instead of appending 2023-07-31 18:37:35 +02:00
Benoit Blanchon
218a12ca46 Call shrinkToFit() in deserializeJson() and deserializeMsgPack() 2023-07-31 17:34:17 +02:00
Benoit Blanchon
752d01a7f1 Add an enable_if to validate the first argument to deserializeXxx() 2023-07-29 12:05:18 +02:00
Benoit Blanchon
43eed00cd9 Add deserializeXxx(JsonVariant, ...) (resolves #1226) 2023-07-29 12:05:18 +02:00
Benoit Blanchon
a8329564e2 Remove JsonDocument::garbageCollect() 2023-07-25 14:37:25 +02:00
Benoit Blanchon
00c9d8680a Remove memoryUsage() 2023-07-24 17:21:25 +02:00
Benoit Blanchon
2fdacb1ca0 Reduce size of CollectionData::clear() 2023-07-24 10:33:06 +02:00
Benoit Blanchon
228c4cf9fa JsonDocument: use the copy-and-swap idiom 2023-07-24 10:13:17 +02:00
Benoit Blanchon
5458e916ea Show a link to the doc when user passes an unsupported input type
Ported from 7eec01cdd6
2023-07-23 18:08:21 +02:00
Benoit Blanchon
1a14499612 Preallocate pool list 2023-07-21 17:57:13 +02:00
Benoit Blanchon
f427706e06 VariantPoolList: handle SlotId overflow 2023-07-21 17:57:13 +02:00
Benoit Blanchon
8be0d57d24 VariantPoolList: reduce the size of capacity_ and count_ 2023-07-21 09:47:25 +02:00
Benoit Blanchon
8fcaebb44a Detect null slot id earlier in VariantPoolList::getSlot() 2023-07-20 18:04:06 +02:00
Benoit Blanchon
727a1013ca Recycle removed slots 2023-07-20 18:04:06 +02:00
Benoit Blanchon
781e449e78 CollectionData::releaseSlot() takes an iterator 2023-07-20 17:53:52 +02:00
Benoit Blanchon
d4af8cffa7 Store current and next slot id in CollectionIterator 2023-07-20 17:53:52 +02:00