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
1d103a1528
MemberProxy: move tests for createNestedArray()
and createNestedObject()
2022-04-27 15:07:26 +02:00
8d9504239b
Fix comparisons operators with const JsonDocument&
2022-04-05 10:12:17 +02:00
bf5d0c790c
Add implicit conversion from JsonDocument
to JsonVariant
2022-03-23 17:17:35 +01:00
f4379f97ae
Format code with clang-format
2022-03-23 17:17:35 +01:00
3dc67c5663
Add memoryUsage()
to ElementProxy
and MemberProxy
( fixes #1730 )
2022-03-19 12:11:40 +01:00
89ed54362b
Fix -Wsign-conversion
on GCC 8 ( fixes #1715 )
2022-02-25 10:28:42 +01:00
ee12155617
Fix crash when adding an object member in a too small JsonDocument
2022-01-13 11:52:45 +01:00
af18994deb
Update copyright notice
2022-01-01 10:01:05 +01:00
e16767af92
Avoid pool reallocation in BasicJsonDocument
's copy assignment
2021-12-16 14:42:54 +01:00