Move sizeofArray() and sizeofObject()

This commit is contained in:
Benoit Blanchon
2024-08-25 14:33:36 +02:00
parent f2894552f2
commit cec18177b0
3 changed files with 12 additions and 10 deletions

View File

@ -6,6 +6,7 @@
#include <ArduinoJson/Array/ArrayData.hpp>
#include <ArduinoJson/Variant/VariantCompare.hpp>
#include <ArduinoJson/Variant/VariantSlot.hpp>
ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
@ -70,4 +71,9 @@ inline bool ArrayData::addValue(T&& value, ResourceManager* resources) {
return true;
}
// Returns the size (in bytes) of an array with n elements.
constexpr size_t sizeofArray(size_t n) {
return n * sizeof(VariantSlot);
}
ARDUINOJSON_END_PRIVATE_NAMESPACE

View File

@ -6,6 +6,7 @@
#include <ArduinoJson/Object/ObjectData.hpp>
#include <ArduinoJson/Variant/VariantCompare.hpp>
#include <ArduinoJson/Variant/VariantSlot.hpp>
ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
@ -67,4 +68,9 @@ inline VariantData* ObjectData::addMember(TAdaptedString key,
return valueSlot.data();
}
// Returns the size (in bytes) of an object with n members.
constexpr size_t sizeofObject(size_t n) {
return 2 * n * sizeof(VariantSlot);
}
ARDUINOJSON_END_PRIVATE_NAMESPACE

View File

@ -24,14 +24,4 @@ union VariantSlot {
FreeSlot free;
};
// Returns the size (in bytes) of an array with n elements.
constexpr size_t sizeofArray(size_t n) {
return n * sizeof(VariantSlot);
}
// Returns the size (in bytes) of an object with n members.
constexpr size_t sizeofObject(size_t n) {
return 2 * n * sizeof(VariantSlot);
}
ARDUINOJSON_END_PRIVATE_NAMESPACE