mirror of
https://github.com/bblanchon/ArduinoJson.git
synced 2025-07-30 18:57:32 +02:00
Swap the parameters of JsonVariant
's constructor
This commit is contained in:
@ -32,8 +32,8 @@ class JsonArray : public detail::VariantOperators<JsonArray> {
|
|||||||
// https://arduinojson.org/v6/api/jsonvariant/
|
// https://arduinojson.org/v6/api/jsonvariant/
|
||||||
operator JsonVariant() {
|
operator JsonVariant() {
|
||||||
void* data = data_; // prevent warning cast-align
|
void* data = data_; // prevent warning cast-align
|
||||||
return JsonVariant(resources_,
|
return JsonVariant(reinterpret_cast<detail::VariantData*>(data),
|
||||||
reinterpret_cast<detail::VariantData*>(data));
|
resources_);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Returns a read-only reference to the array.
|
// Returns a read-only reference to the array.
|
||||||
@ -46,7 +46,7 @@ class JsonArray : public detail::VariantOperators<JsonArray> {
|
|||||||
// Returns a reference to the new element.
|
// Returns a reference to the new element.
|
||||||
// https://arduinojson.org/v6/api/jsonarray/add/
|
// https://arduinojson.org/v6/api/jsonarray/add/
|
||||||
JsonVariant add() const {
|
JsonVariant add() const {
|
||||||
return JsonVariant(resources_, collectionAddElement(data_, resources_));
|
return JsonVariant(collectionAddElement(data_, resources_), resources_);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Appends a value to the array.
|
// Appends a value to the array.
|
||||||
|
@ -36,7 +36,7 @@ class JsonArrayIterator {
|
|||||||
: resources_(resources), slot_(slot) {}
|
: resources_(resources), slot_(slot) {}
|
||||||
|
|
||||||
JsonVariant operator*() const {
|
JsonVariant operator*() const {
|
||||||
return JsonVariant(resources_, slot_->data());
|
return JsonVariant(slot_->data(), resources_);
|
||||||
}
|
}
|
||||||
Ptr<JsonVariant> operator->() {
|
Ptr<JsonVariant> operator->() {
|
||||||
return operator*();
|
return operator*();
|
||||||
|
@ -297,7 +297,7 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
|
|||||||
// Returns a reference to the new element.
|
// Returns a reference to the new element.
|
||||||
// https://arduinojson.org/v6/api/jsondocument/add/
|
// https://arduinojson.org/v6/api/jsondocument/add/
|
||||||
FORCE_INLINE JsonVariant add() {
|
FORCE_INLINE JsonVariant add() {
|
||||||
return JsonVariant(&resources_, data_.addElement(&resources_));
|
return JsonVariant(data_.addElement(&resources_), &resources_);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Appends a value to the root array.
|
// Appends a value to the root array.
|
||||||
@ -352,7 +352,7 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
JsonVariant getVariant() {
|
JsonVariant getVariant() {
|
||||||
return JsonVariant(&resources_, &data_);
|
return JsonVariant(&data_, &resources_);
|
||||||
}
|
}
|
||||||
|
|
||||||
JsonVariantConst getVariant() const {
|
JsonVariantConst getVariant() const {
|
||||||
|
@ -29,8 +29,8 @@ class JsonObject : public detail::VariantOperators<JsonObject> {
|
|||||||
|
|
||||||
operator JsonVariant() const {
|
operator JsonVariant() const {
|
||||||
void* data = data_; // prevent warning cast-align
|
void* data = data_; // prevent warning cast-align
|
||||||
return JsonVariant(resources_,
|
return JsonVariant(reinterpret_cast<detail::VariantData*>(data),
|
||||||
reinterpret_cast<detail::VariantData*>(data));
|
resources_);
|
||||||
}
|
}
|
||||||
|
|
||||||
operator JsonObjectConst() const {
|
operator JsonObjectConst() const {
|
||||||
|
@ -19,7 +19,7 @@ class JsonPair {
|
|||||||
if (slot) {
|
if (slot) {
|
||||||
key_ = JsonString(slot->key(), slot->ownsKey() ? JsonString::Copied
|
key_ = JsonString(slot->key(), slot->ownsKey() ? JsonString::Copied
|
||||||
: JsonString::Linked);
|
: JsonString::Linked);
|
||||||
value_ = JsonVariant(resources, slot->data());
|
value_ = JsonVariant(slot->data(), resources);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ class JsonVariant : public detail::VariantRefBase<JsonVariant>,
|
|||||||
JsonVariant() : data_(0), resources_(0) {}
|
JsonVariant() : data_(0), resources_(0) {}
|
||||||
|
|
||||||
// INTERNAL USE ONLY
|
// INTERNAL USE ONLY
|
||||||
JsonVariant(detail::ResourceManager* resources, detail::VariantData* data)
|
JsonVariant(detail::VariantData* data, detail::ResourceManager* resources)
|
||||||
: data_(data), resources_(resources) {}
|
: data_(data), resources_(resources) {}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@ -85,19 +85,18 @@ ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
|
|||||||
|
|
||||||
template <typename TDerived>
|
template <typename TDerived>
|
||||||
inline JsonVariant VariantRefBase<TDerived>::add() const {
|
inline JsonVariant VariantRefBase<TDerived>::add() const {
|
||||||
return JsonVariant(
|
return JsonVariant(variantAddElement(getOrCreateData(), getResourceManager()),
|
||||||
getResourceManager(),
|
getResourceManager());
|
||||||
variantAddElement(getOrCreateData(), getResourceManager()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename TDerived>
|
template <typename TDerived>
|
||||||
inline JsonVariant VariantRefBase<TDerived>::getVariant() const {
|
inline JsonVariant VariantRefBase<TDerived>::getVariant() const {
|
||||||
return JsonVariant(getResourceManager(), getData());
|
return JsonVariant(getData(), getResourceManager());
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename TDerived>
|
template <typename TDerived>
|
||||||
inline JsonVariant VariantRefBase<TDerived>::getOrCreateVariant() const {
|
inline JsonVariant VariantRefBase<TDerived>::getOrCreateVariant() const {
|
||||||
return JsonVariant(getResourceManager(), getOrCreateData());
|
return JsonVariant(getOrCreateData(), getResourceManager());
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename TDerived>
|
template <typename TDerived>
|
||||||
|
Reference in New Issue
Block a user