c98ba999af
Add more tests of JsonDocument
constructor
2023-08-10 14:30:50 +02:00
7f459adc4b
Remove createNestedArray()
and createNestedObject()
2023-08-09 12:08:21 +02:00
f422b7b37d
Replace add()
with add<T>()
(add(T)
is still supported)
2023-08-09 10:57:52 +02:00
9a11d98117
Tests: make allocator assertions more readable
2023-07-26 09:28:21 +02:00
30ec507989
Tests: use a consistent naming convention for allocators
2023-07-25 14:53:54 +02:00
7a76da3bc7
Tests: rename ControllableAllocator
to KillswitchAllocator
2023-07-25 14:46:25 +02:00
a8329564e2
Remove JsonDocument::garbageCollect()
2023-07-25 14:37:25 +02:00
00c9d8680a
Remove memoryUsage()
2023-07-24 17:21:25 +02:00
1a14499612
Preallocate pool list
2023-07-21 17:57:13 +02:00
0f319e7ca4
Remove capacity from JsonDocument
's constructor
2023-07-18 09:08:55 +02:00
42b2840009
Create more memory pools as needed ( resolves #1074 )
2023-07-18 09:08:55 +02:00
65c67d317a
AllocatorLog: support nulls in deallocate()
and reallocate()
2023-07-17 17:28:49 +02:00
c4e5051a7a
Store index of slot in the pool instead of a pointer or a distance
2023-07-17 11:20:46 +02:00
39e8b63746
Remove shallowCopy()
2023-07-17 11:20:46 +02:00
c37990d791
CollectionData: addSlot()
returns an iterator
2023-07-17 11:20:46 +02:00
0f511b873d
VariantPool: store VariantSlot
s instead of char
s
2023-07-12 15:03:56 +02:00
86772d33bc
Rename VALUE_IS_OWNED_RAW
to VALUE_IS_RAW_STRING
2023-05-02 10:03:37 +02:00
806fa907ab
Always store serialized("string")
by copy ( #1915 )
2023-05-02 09:36:40 +02:00
461cdaa818
Allow using PROGMEM outside of Arduino ( fixes #1903 )
...
Ported from 40daf56b5a
2023-04-21 19:08:53 +02:00
003087406c
Reference-count shared strings
2023-04-21 16:11:54 +02:00
b7c8e0d25c
Decouple VariantData
from MemoryPool
2023-04-21 16:11:54 +02:00
d8f3058efa
Store the strings in the heap
2023-04-17 10:42:08 +02:00
22e4f216c3
Tests: allow ArmoredAllocator to be called multiple times
2023-04-07 18:27:38 +02:00
e9850152a7
Tests: replace constants with sizeofString(n)
2023-04-07 14:50:54 +02:00
c4b879645a
Remove JsonDocument::capacity()
2023-04-03 09:51:43 +02:00
0643c2e708
Test: gather JsonDocument constructor and assignment tests
2023-04-03 09:51:09 +02:00
bcf1339e89
Test: split JsonDocument.cpp
into multiple files
2023-04-03 09:51:09 +02:00
dc463a2f72
Test: remove REQUIRE_JSON()
2023-04-03 09:51:09 +02:00
a7cdf638e7
Test: move ControllableAllocator
2023-04-03 09:51:09 +02:00
57810af2ac
Test: include deallocated size in allocator's log
2023-04-02 16:47:59 +02:00
2eb726b744
Test: add AllocatorLog
2023-04-02 16:47:59 +02:00
912137ccfb
Test: share SpyingAllocator
2023-04-01 10:34:48 +02:00
035c913c72
Remove ARDUINOJSON_ENABLE_STRING_DEDUPLICATION
2023-03-29 19:28:44 +02:00
3f43c2b816
Remove JSON_ARRAY_SIZE()
, JSON_OBJECT_SIZE()
, and JSON_STRING_SIZE()
2023-03-29 19:18:06 +02:00
540901e219
Merge DynamicJsonDocument
with JsonDocument
2023-03-20 14:49:51 +01:00
db9258bcd7
Remove BasicJsonDocument
2023-03-20 14:49:08 +01:00
24aaab6e3e
Add abstract Allocator
class
2023-03-20 14:47:27 +01:00
17a482a9b1
Remove StaticJsonDocument
2023-03-20 10:40:35 +01:00
b2b995edb3
Use delete
instead of hiding copy constructors and assignments ( #1820 )
2023-02-17 10:59:57 +01:00
daa87e12dc
Update copyright notice
2023-02-16 11:45:01 +01:00
1b66a217bf
Replace ARDUINOJSON_NAMESPACE
with an inline namespace ( #1820 )
2023-02-14 10:04:48 +01:00
2be4ee732a
Remove ARDUINOJSON_HAS_RVALUE_REFERENCES
( #1820 )
2023-02-10 17:02:52 +01:00
62dea9d364
Reformat CMake files
2023-02-10 17:02:51 +01:00
94b2b3f9ce
Run all tests with C++11 enabled ( #1820 )
2023-02-10 17:02:51 +01:00
0f85a55cac
Implement VariantRefBase
with a CRTP
2022-12-05 21:00:24 +01:00
cf4436e581
Extract VariantProxy
from ElementProxy
and MemberProxy
2022-08-30 10:25:03 +02:00
8002722f3b
Clang-format: set DerivePointerAlignment
to false
2022-08-09 16:52:17 +02:00
758580bfb6
Rename addElement()
to add()
2022-07-07 14:32:43 +02:00
cd8373ad32
Change link()
to shallowCopy()
(issue #1343 )
...
Instead of storing a pointer, the function copies the `VariantData`.
Benefits:
* smaller code
* no impact on programs that don't use this feature
Drawbacks:
* changes to the original variant are not always reflected on the copy
* modifying the original from the shallow copy leads to UB
2022-07-05 17:07:43 +02:00
3d6c328a4f
Add JsonVariant::link()
( resolves #1343 )
2022-04-27 15:08:13 +02:00