Commit Graph

  • 7b7ee6cdeb Add VariantImpl::isUnbound() Benoit Blanchon 2025-07-11 14:32:30 +02:00
  • dca5ba481f CollectionIterator: add value() member function Benoit Blanchon 2025-07-10 18:44:59 +02:00
  • ec53525452 Rename CollectionData.hpp to CollectionIterator.hpp Benoit Blanchon 2025-07-10 18:19:37 +02:00
  • 0b9a8b6d2b Replace getData()/getResourceManager() with getImpl() Benoit Blanchon 2025-07-07 15:53:37 +02:00
  • f62d6f26e0 Merge ArrayImpl, CollectionImpl, and ObjectImpl into VariantImpl Benoit Blanchon 2025-07-04 09:57:02 +02:00
  • 1f1227d595 CollectionImpl: attach to VariantData* instead of CollectionData* Benoit Blanchon 2025-07-03 11:03:10 +02:00
  • 6f28ec0384 CollectionImpl: add allocVariant(), getVariant(), freeVariant() Benoit Blanchon 2025-07-03 10:20:27 +02:00
  • 6ba4507252 CollectionImpl: add helper getCollectionData() Benoit Blanchon 2025-07-03 10:15:20 +02:00
  • a265ef4927 Move CollectionData definition Benoit Blanchon 2025-07-02 18:25:40 +02:00
  • 8790802ce3 Decouple VariantImpl from ArrayImpl and ObjectImpl Benoit Blanchon 2025-07-02 18:21:51 +02:00
  • f1b06b588e Move VariantImpl definition to VariantImpl.hpp Benoit Blanchon 2025-06-26 17:36:46 +02:00
  • 84fcd90658 Extract VariantImpl Benoit Blanchon 2025-06-26 14:59:10 +02:00
  • bd551fa4ce Extract ArrayImpl, CollectionImpl, and ObjectImpl Benoit Blanchon 2025-07-10 19:27:44 +02:00
  • d9c6a70595 JsonObject: replace ObjectData* member with VariantData* Benoit Blanchon 2025-06-15 12:55:13 +02:00
  • b44aa3a8b5 JsonArray: replace ArrayData* member with VariantData* Benoit Blanchon 2025-06-15 12:23:02 +02:00
  • c2290a2386 JsonObjectConst: replace ObjectData* member with VariantData* Benoit Blanchon 2025-06-15 12:34:38 +02:00
  • 4457cb7cc5 JsonArrayConst: replace ArrayData* member with VariantData* Benoit Blanchon 2025-06-15 12:32:37 +02:00
  • 1e0bbd518c Add a pool dedicated to 8-byte values (double/int64_t/uint64_t) Benoit Blanchon 2025-06-02 19:39:08 +02:00
  • cc077c1b63 Store static strings in a dedicated pool Benoit Blanchon 2025-02-24 15:35:09 +01:00
  • 509807d3c2 Remove CollectionIterator::nextId_ Benoit Blanchon 2025-07-10 19:16:47 +02:00
  • c07744dc0d CI: upgrade Windows runner Benoit Blanchon 2025-06-26 19:18:38 +02:00
  • 733bc4ee82 Set version to 7.4.2 v7.4.2 Benoit Blanchon 2025-06-20 09:37:14 +02:00
  • 9aa77994b4 Remove sponsor Programming Electronics Academy Benoit Blanchon 2025-06-20 08:43:48 +02:00
  • f051f8328d Undef true and false macros Benoit Blanchon 2025-06-19 11:23:05 +02:00
  • 411424b74e CI: upgrade clang-tidy Benoit Blanchon 2025-05-20 19:17:17 +02:00
  • 5e5c287978 CI: upgrade Clang versions Benoit Blanchon 2025-05-20 14:49:04 +02:00
  • 377cf63075 CI: upgrade runner to ubuntu-22.04 Benoit Blanchon 2025-05-20 10:17:02 +02:00
  • 3252013509 Set version to 7.4.1 v7.4.1 Benoit Blanchon 2025-04-11 15:43:42 +02:00
  • deab127a2f Fix crash with tiny Flash strings (issue #2170) Benoit Blanchon 2025-04-11 09:45:48 +02:00
  • 96281de682 Set version to 7.4.0 v7.4.0 Benoit Blanchon 2025-04-09 14:49:13 +02:00
  • f0e84e4933 Fix support for const char[] Benoit Blanchon 2025-04-07 09:46:02 +02:00
  • 91397f9f06 Optimize storage of tiny strings (up to 3 characters) Benoit Blanchon 2025-04-09 08:55:08 +02:00
  • 7f75985e47 Change StringBuffer::save() to take a VariantData* Benoit Blanchon 2025-02-28 10:05:50 +01:00
  • 05b68fc7cc Change StringBuilder::save() to take a VariantData* Benoit Blanchon 2025-02-28 09:59:46 +01:00
  • b06cee8f4d Remove the overload of setString() for StringNode Benoit Blanchon 2025-02-27 19:01:26 +01:00
  • e03d8ae885 Set version to 7.3.1 v7.3.1 Benoit Blanchon 2025-02-27 19:35:14 +01:00
  • cb1dcfa5e4 Reduce code size Benoit Blanchon 2025-02-27 11:06:33 +01:00
  • 67dd3120e6 Fix conversion from static string to number Benoit Blanchon 2025-02-27 11:01:51 +01:00
  • 9f3cf04415 Remove useless null check Benoit Blanchon 2025-02-24 16:40:42 +01:00
  • 01e49b33b7 Update copyright year Benoit Blanchon 2025-02-24 15:18:26 +01:00
  • 8f7e793f37 Set version to 7.3.0 v7.3.0 Benoit Blanchon 2024-12-29 17:15:57 +01:00
  • 254fa5712a Update the release scripts to include the breaking changes section Benoit Blanchon 2024-12-29 16:37:08 +01:00
  • de05814294 Move public facing SFINAEs to template declarations Benoit Blanchon 2024-12-23 17:44:52 +01:00
  • e33e78d202 Rename undocumented JsonString::isLinked() to isStatic() Benoit Blanchon 2024-11-26 14:32:21 +01:00
  • ed5f890d28 Replace JsonString::Ownership with bool Benoit Blanchon 2024-11-26 14:32:29 +01:00
  • 8931651317 JsonString: change default ownership to Copied Benoit Blanchon 2024-11-26 10:10:52 +01:00
  • c078957282 Remove unnecessary universal references Benoit Blanchon 2024-11-25 11:32:20 +01:00
  • cf084ae6b4 JsonString: move adapter class in the same file Benoit Blanchon 2024-11-25 11:45:35 +01:00
  • f02fcc96a2 JsonArray: remove redundant tests Benoit Blanchon 2024-11-25 11:28:14 +01:00
  • 594dc707cb Change string copy policy: only string literal are stored by pointer Benoit Blanchon 2024-11-25 11:32:03 +01:00
  • 5f8e3c0f0f Polyfills: test remove_cv Benoit Blanchon 2024-11-25 11:26:40 +01:00
  • afc0a29c2c Polyfills: add decay Benoit Blanchon 2024-11-25 11:26:29 +01:00
  • a256ec7fff RamString: use a bitfield to reduce size Benoit Blanchon 2024-11-25 11:16:22 +01:00
  • 019e8326b7 Implement JsonString from RamString Benoit Blanchon 2024-11-25 11:13:39 +01:00
  • bee1095042 Merge all RAM string adapters Benoit Blanchon 2024-11-12 14:48:25 +01:00
  • de59dce527 Fix typo in comments Benoit Blanchon 2024-11-25 10:46:34 +01:00
  • 57a9c50b38 Make ElementProxy and MemberProxy non-copyable Benoit Blanchon 2024-11-25 10:46:21 +01:00
  • 5e7653b36a Store adapted string in MemberProxy Benoit Blanchon 2024-11-13 14:50:18 +01:00
  • 8110058729 Fix support for NUL characters in deserializeJson() Benoit Blanchon 2024-11-17 15:40:21 +01:00
  • 7946ebe1a3 Wandbox: compile with gcc-head Benoit Blanchon 2024-11-15 09:13:00 +01:00
  • f9fe8557f1 Set version to 7.2.1 v7.2.1 Benoit Blanchon 2024-11-15 09:05:29 +01:00
  • e007d71b4f Fix operator[](variant) ignoring NUL characters Benoit Blanchon 2024-11-14 14:56:47 +01:00
  • 67a512a923 Clean up tests of adaptString() Benoit Blanchon 2024-11-14 14:20:35 +01:00
  • 9cf4f3871d Remove unused overload of stringCompare() and stringEquals() Benoit Blanchon 2024-11-14 14:17:13 +01:00
  • 31253dbe13 Add more tests with VLAs Benoit Blanchon 2024-11-07 14:19:47 +01:00
  • 1110d62128 Fix VLA support in JsonDocument::set() Benoit Blanchon 2024-11-07 14:20:33 +01:00
  • c6c0649d70 Replace typedef with using Benoit Blanchon 2024-10-23 15:54:08 +02:00
  • 61ec2c4f95 Reduce boilerplate for failing build tests Benoit Blanchon 2024-10-23 15:47:59 +02:00
  • 0dd6231b3f Forbid deserializeJson(JsonArray|JsonObject, ...) Benoit Blanchon 2024-10-23 15:20:42 +02:00
  • 20219d74f0 Tests: don't link FailingBuilds with catch Benoit Blanchon 2024-10-23 15:04:52 +02:00
  • 64cbaa6ff7 Remove the workaround for particle-iot/particle-cli#716 Benoit Blanchon 2024-09-28 09:58:48 +02:00
  • 617c0329df Replace problematic symbols in idf_component.yml Benoit Blanchon 2024-09-26 09:21:51 +02:00
  • 2512993617 Replace problematic symbol in idf_component.yml Benoit Blanchon 2024-09-26 09:18:23 +02:00
  • 48ee4a178b Use a const reference in is_convertible() Benoit Blanchon 2024-09-21 09:22:12 +02:00
  • cd4b2b2463 Set version to 7.2.0 v7.2.0 Benoit Blanchon 2024-09-18 10:48:50 +02:00
  • f806a42cc2 Add support for escape sequence \' Benoit Blanchon 2024-09-17 10:25:25 +02:00
  • c1a507c158 Set ARDUINOJSON_POOL_CAPACITY from ARDUINOJSON_SLOT_ID_SIZE Benoit Blanchon 2024-09-11 21:08:51 +02:00
  • a1809d0f31 Replace sizeof(VariantData) with sizeof(SlotData) Benoit Blanchon 2024-09-10 18:26:58 +02:00
  • d92eee8736 Deprecate containsKey() in favor of doc["key"].is<T>() Benoit Blanchon 2024-09-06 17:32:09 +02:00
  • dd1d96e28f Group calls to getExtension() Benoit Blanchon 2024-09-05 12:15:10 +02:00
  • 3b64197869 MsgPackDeserializer: check extension allocation result Benoit Blanchon 2024-09-04 14:34:02 +02:00
  • 1f7a3f3174 JsonDeserializer: use float when the value has few digits Benoit Blanchon 2024-09-04 14:33:14 +02:00
  • fd6314e132 Move some numbers tests to use_double_0.cpp Benoit Blanchon 2024-09-03 19:18:32 +02:00
  • e4e2557b76 Move test of decomposeFloat() Benoit Blanchon 2024-09-03 13:27:39 +02:00
  • 3b6bf45b8a Serialize float with less decimal places than double Benoit Blanchon 2024-09-03 11:44:35 +02:00
  • 65ba36622c Add VariantType Benoit Blanchon 2024-09-02 17:56:19 +02:00
  • 33452c1f37 Test JsonVariant::as<T>() with extension slots Benoit Blanchon 2024-08-27 16:06:38 +02:00
  • ee02c0d573 Test extension slot allocation failure Benoit Blanchon 2024-08-27 14:51:22 +02:00
  • 0278e94fce Set ARDUINOJSON_USE_DOUBLE to 0 by default on 8-bit architectures Benoit Blanchon 2024-08-27 14:53:28 +02:00
  • 7643dadaec WIP Benoit Blanchon 2024-08-27 14:40:24 +02:00
  • c0bebe35f1 Improve message when user forgets third arg of serializeJson() et al. Benoit Blanchon 2024-08-27 10:15:43 +02:00
  • b5bcb37657 Use enable_if_t instead of enable_if Benoit Blanchon 2024-08-27 10:00:09 +02:00
  • b4a5b053ca Merge conf_test for linux and windows Benoit Blanchon 2024-08-27 08:03:55 +02:00
  • e297932a98 Store 64-bit numbers (double and long long) in an additional slot Benoit Blanchon 2024-08-27 08:02:09 +02:00
  • e682337655 Release VariantData resources explicitly before setting value Benoit Blanchon 2024-08-26 15:09:56 +02:00
  • 4ada3f849c Decouple parseNumber() from VariantData Benoit Blanchon 2024-08-25 16:40:12 +02:00
  • 5dd203bca4 Rename SlotWithId to Slot Benoit Blanchon 2024-08-25 15:04:39 +02:00
  • 362201241f Make MemoryPool generic Benoit Blanchon 2024-08-25 14:57:35 +02:00
  • 2be24eded8 Rename SlotWithId::slot() and VariantWithId::data() to ptr() Benoit Blanchon 2024-08-25 14:51:59 +02:00
  • 4327f72140 Remove VariantSlot Benoit Blanchon 2024-08-25 14:42:41 +02:00