Commit Graph

657 Commits

Author SHA1 Message Date
Benoit Blanchon
8228aec74b Rename Float to JsonFloat 2022-12-19 14:41:43 +01:00
Benoit Blanchon
2f2e0e9415 Rename ObjectIterator to JsonObjectIterator 2022-12-19 12:21:11 +01:00
Benoit Blanchon
3a9803679f Rename Pair to JsonPair 2022-12-19 12:21:11 +01:00
Benoit Blanchon
dc42d93b0f Rename ObjectConstRef to JsonObjectConst 2022-12-19 12:20:37 +01:00
Benoit Blanchon
dff07ebfe8 Rename ObjectRef to JsonObject 2022-12-19 12:20:13 +01:00
Benoit Blanchon
4c456a95a3 Rename ArrayIterator to JsonArrayIterator 2022-12-19 12:12:28 +01:00
Benoit Blanchon
83e5d9d150 Rename ArrayConstRef to JsonArrayConst 2022-12-19 12:12:28 +01:00
Benoit Blanchon
7079aa99d7 Rename ArrayRef to JsonArray 2022-12-19 12:10:58 +01:00
Benoit Blanchon
afe2434baf Extract ObjectConstRef.hpp from ObjectRef.hpp 2022-12-05 21:00:24 +01:00
Benoit Blanchon
e08f8d5b51 Inline class ObjectRefBase 2022-12-05 21:00:24 +01:00
Benoit Blanchon
7e3b40f379 Extract ArrayConstRef.hpp from ArrayRef.hpp 2022-12-05 21:00:24 +01:00
Benoit Blanchon
584770dc6f Inline class ArrayRefBase 2022-12-05 21:00:24 +01:00
Benoit Blanchon
5d2a440c69 Remove ArrayFunctions.hpp and ObjectFunctions.hpp 2022-12-05 21:00:24 +01:00
Benoit Blanchon
ac14f29e6c Move definitions of JSON_ARRAY_SIZE() and JSON_OBJECT_SIZE() 2022-12-05 21:00:24 +01:00
Benoit Blanchon
0f85a55cac Implement VariantRefBase with a CRTP 2022-12-05 21:00:24 +01:00
Benoit Blanchon
21db92af47 Simpify variant reader 2022-11-26 18:32:33 +01:00
Benoit Blanchon
6447520b5b Replace Yes/No with int/char 2022-11-22 18:56:42 +01:00
Benoit Blanchon
2182c83b87 Remove ArrayShortcuts and ObjectShortcuts 2022-11-02 09:18:02 +01:00
Benoit Blanchon
c3d5e9382d Implement IsString from StringAdapter 2022-10-26 17:20:33 +02:00
Benoit Blanchon
ecb72f9a9d Add StringAdapter<T> 2022-10-26 16:19:14 +02:00
Benoit Blanchon
7004c39af6 variantGetOrAddMember() takes an adapted string like all its siblings 2022-10-26 10:44:21 +02:00
Benoit Blanchon
057956225c Add namespace StringStoragePolicy 2022-10-26 10:41:42 +02:00
Benoit Blanchon
b27990f780 Attach copy policy to string adapters 2022-10-26 10:37:18 +02:00
Benoit Blanchon
92d6bae25c Remove ArrayIterator::internal() and ObjectIterator::internal() 2022-10-14 18:11:55 +02:00
Benoit Blanchon
6e17c3e6f9 Extract VariantRefBase from VariantProxy 2022-10-03 19:14:05 +02:00
Benoit Blanchon
cf4436e581 Extract VariantProxy from ElementProxy and MemberProxy 2022-08-30 10:25:03 +02:00
Benoit Blanchon
2b6bb78a09 Don't call operator VariantConstRef in VariantComparer 2022-08-30 10:25:03 +02:00
Benoit Blanchon
ffa7f8d22d Make MemberProxy and `ElementProxy similar 2022-08-30 10:25:03 +02:00
Benoit Blanchon
8002722f3b Clang-format: set DerivePointerAlignment to false 2022-08-09 16:52:17 +02:00
Benoit Blanchon
62e83133cd Remove JsonDocument::data() and JsonDocument::memoryPool() 2022-08-09 10:38:36 +02:00
Benoit Blanchon
1d21027e2a Fix lax parsing of true, false, and null (fixes #1781) 2022-08-06 09:15:07 +02:00
Benoit Blanchon
dde9e9fc26 Remove member MsgPackDeserializer::_error
This reduces the code size by 54 bytes on AVR.
2022-07-29 11:51:46 +02:00
Benoit Blanchon
a6da4ad452 Remove member JsonDeserializer::_error
This reduces the code size by 72 bytes on AVR.
2022-07-29 11:51:46 +02:00
Benoit Blanchon
84b7037b3e Add VariantAttorney 2022-07-07 14:32:43 +02:00
Benoit Blanchon
c5838a876b Remove getElement(), getOrAddElement(), getMember(), and getOrAddMember() 2022-07-07 14:32:43 +02:00
Benoit Blanchon
750cd0be92 Add collectionToVariant() 2022-07-07 14:32:43 +02:00
Benoit Blanchon
758580bfb6 Rename addElement() to add() 2022-07-07 14:32:43 +02:00
Benoit Blanchon
58c7c919f2 Remove unused arrayAccept() and objectAccept() 2022-07-07 09:44:58 +02:00
Benoit Blanchon
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
Benoit Blanchon
3b3ab8c4e1 Inline variantAsArray() and variantAsObject() 2022-07-05 14:02:41 +02:00
Benoit Blanchon
5b06b1564e Remove undocumented accept() functions 2022-07-03 17:38:03 +02:00
Benoit Blanchon
77b4270d97 Remove Visitable 2022-07-03 15:37:08 +02:00
Benoit Blanchon
e2bb2cec7b Fix comparison operators for JsonObject and JsonObjectConst 2022-06-10 11:14:59 +02:00
Benoit Blanchon
ff4e837df5 Fix comparison operators for JsonArray and JsonArrayConst 2022-06-09 21:06:32 +02:00
Benoit Blanchon
fb904033d3 Replace serializeJson()'s template parameter with JsonVariantConst 2022-06-02 20:36:32 +02:00
Benoit Blanchon
e6cd16aec4 Add missing const specifiers in serializers 2022-05-23 19:20:15 +02:00
Benoit Blanchon
ee74c3bb1c Inline variantAccept() 2022-05-23 19:17:18 +02:00
Benoit Blanchon
37faa7ce13 Merge definitions of VariantConstRef::accept() and VariantRef::accept() 2022-05-23 19:11:09 +02:00
Benoit Blanchon
3d6c328a4f Add JsonVariant::link() (resolves #1343) 2022-04-27 15:08:13 +02:00
Benoit Blanchon
7b19a4b6e7 Add getMemberConst() and getElementConst() 2022-04-27 15:07:26 +02:00