mirror of
https://github.com/bblanchon/ArduinoJson.git
synced 2025-07-19 21:42:30 +02:00
Remove VariantImpl.hpp
This commit is contained in:
@ -40,7 +40,6 @@
|
|||||||
#include "ArduinoJson/Object/MemberProxy.hpp"
|
#include "ArduinoJson/Object/MemberProxy.hpp"
|
||||||
#include "ArduinoJson/Variant/ConverterImpl.hpp"
|
#include "ArduinoJson/Variant/ConverterImpl.hpp"
|
||||||
#include "ArduinoJson/Variant/VariantCompare.hpp"
|
#include "ArduinoJson/Variant/VariantCompare.hpp"
|
||||||
#include "ArduinoJson/Variant/VariantImpl.hpp"
|
|
||||||
|
|
||||||
#include "ArduinoJson/Json/JsonDeserializer.hpp"
|
#include "ArduinoJson/Json/JsonDeserializer.hpp"
|
||||||
#include "ArduinoJson/Json/JsonSerializer.hpp"
|
#include "ArduinoJson/Json/JsonSerializer.hpp"
|
||||||
|
@ -200,3 +200,14 @@ struct Converter<JsonArray> : private detail::VariantAttorney {
|
|||||||
};
|
};
|
||||||
|
|
||||||
ARDUINOJSON_END_PUBLIC_NAMESPACE
|
ARDUINOJSON_END_PUBLIC_NAMESPACE
|
||||||
|
|
||||||
|
ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
|
||||||
|
|
||||||
|
template <typename TDerived>
|
||||||
|
template <typename T>
|
||||||
|
inline typename enable_if<is_same<T, JsonArray>::value, JsonArray>::type
|
||||||
|
VariantRefBase<TDerived>::to() const {
|
||||||
|
return JsonArray(getPool(), variantToArray(getOrCreateData(), getPool()));
|
||||||
|
}
|
||||||
|
|
||||||
|
ARDUINOJSON_END_PRIVATE_NAMESPACE
|
||||||
|
@ -234,3 +234,14 @@ struct Converter<JsonObject> : private detail::VariantAttorney {
|
|||||||
};
|
};
|
||||||
|
|
||||||
ARDUINOJSON_END_PUBLIC_NAMESPACE
|
ARDUINOJSON_END_PUBLIC_NAMESPACE
|
||||||
|
|
||||||
|
ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
|
||||||
|
|
||||||
|
template <typename TDerived>
|
||||||
|
template <typename T>
|
||||||
|
typename enable_if<is_same<T, JsonObject>::value, JsonObject>::type
|
||||||
|
VariantRefBase<TDerived>::to() const {
|
||||||
|
return JsonObject(getPool(), variantToObject(getOrCreateData(), getPool()));
|
||||||
|
}
|
||||||
|
|
||||||
|
ARDUINOJSON_END_PRIVATE_NAMESPACE
|
||||||
|
@ -79,3 +79,37 @@ struct Converter<JsonVariantConst> : private detail::VariantAttorney {
|
|||||||
};
|
};
|
||||||
|
|
||||||
ARDUINOJSON_END_PUBLIC_NAMESPACE
|
ARDUINOJSON_END_PUBLIC_NAMESPACE
|
||||||
|
|
||||||
|
ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
|
||||||
|
|
||||||
|
template <typename TDerived>
|
||||||
|
inline JsonVariant VariantRefBase<TDerived>::add() const {
|
||||||
|
return JsonVariant(getPool(),
|
||||||
|
variantAddElement(getOrCreateData(), getPool()));
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename TDerived>
|
||||||
|
inline JsonVariant VariantRefBase<TDerived>::getVariant() const {
|
||||||
|
return JsonVariant(getPool(), getData());
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename TDerived>
|
||||||
|
inline JsonVariant VariantRefBase<TDerived>::getOrCreateVariant() const {
|
||||||
|
return JsonVariant(getPool(), getOrCreateData());
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename TDerived>
|
||||||
|
template <typename T>
|
||||||
|
typename enable_if<is_same<T, JsonVariant>::value, JsonVariant>::type
|
||||||
|
VariantRefBase<TDerived>::to() const {
|
||||||
|
variantSetNull(getOrCreateData(), getPool());
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename TDerived>
|
||||||
|
inline void convertToJson(const VariantRefBase<TDerived>& src,
|
||||||
|
JsonVariant dst) {
|
||||||
|
dst.set(src.template as<JsonVariantConst>());
|
||||||
|
}
|
||||||
|
|
||||||
|
ARDUINOJSON_END_PRIVATE_NAMESPACE
|
||||||
|
@ -1,63 +0,0 @@
|
|||||||
// ArduinoJson - https://arduinojson.org
|
|
||||||
// Copyright © 2014-2023, Benoit BLANCHON
|
|
||||||
// MIT License
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <ArduinoJson/Array/JsonArray.hpp>
|
|
||||||
#include <ArduinoJson/Object/JsonObject.hpp>
|
|
||||||
#include <ArduinoJson/Variant/JsonVariant.hpp>
|
|
||||||
|
|
||||||
ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
|
|
||||||
|
|
||||||
template <typename TDerived>
|
|
||||||
inline JsonVariant VariantRefBase<TDerived>::add() const {
|
|
||||||
return JsonVariant(getPool(),
|
|
||||||
variantAddElement(getOrCreateData(), getPool()));
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename TDerived>
|
|
||||||
inline JsonVariant VariantRefBase<TDerived>::getVariant() const {
|
|
||||||
return JsonVariant(getPool(), getData());
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename TDerived>
|
|
||||||
inline JsonVariant VariantRefBase<TDerived>::getOrCreateVariant() const {
|
|
||||||
return JsonVariant(getPool(), getOrCreateData());
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename TDerived>
|
|
||||||
template <typename T>
|
|
||||||
inline typename enable_if<is_same<T, JsonArray>::value, JsonArray>::type
|
|
||||||
VariantRefBase<TDerived>::to() const {
|
|
||||||
return JsonArray(getPool(), variantToArray(getOrCreateData(), getPool()));
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename TDerived>
|
|
||||||
template <typename T>
|
|
||||||
typename enable_if<is_same<T, JsonObject>::value, JsonObject>::type
|
|
||||||
VariantRefBase<TDerived>::to() const {
|
|
||||||
return JsonObject(getPool(), variantToObject(getOrCreateData(), getPool()));
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename TDerived>
|
|
||||||
template <typename T>
|
|
||||||
typename enable_if<is_same<T, JsonVariant>::value, JsonVariant>::type
|
|
||||||
VariantRefBase<TDerived>::to() const {
|
|
||||||
variantSetNull(getOrCreateData(), getPool());
|
|
||||||
return *this;
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename TDerived>
|
|
||||||
inline void convertToJson(const VariantRefBase<TDerived>& src,
|
|
||||||
JsonVariant dst) {
|
|
||||||
dst.set(src.template as<JsonVariantConst>());
|
|
||||||
}
|
|
||||||
|
|
||||||
inline void VariantSlot::setKey(StringNode* k) {
|
|
||||||
ARDUINOJSON_ASSERT(k);
|
|
||||||
flags_ |= OWNED_KEY_BIT;
|
|
||||||
key_ = k->data;
|
|
||||||
}
|
|
||||||
|
|
||||||
ARDUINOJSON_END_PRIVATE_NAMESPACE
|
|
@ -89,7 +89,11 @@ class VariantSlot {
|
|||||||
key_ = k;
|
key_ = k;
|
||||||
}
|
}
|
||||||
|
|
||||||
void setKey(StringNode* k);
|
void setKey(StringNode* k) {
|
||||||
|
ARDUINOJSON_ASSERT(k);
|
||||||
|
flags_ |= OWNED_KEY_BIT;
|
||||||
|
key_ = k->data;
|
||||||
|
}
|
||||||
|
|
||||||
const char* key() const {
|
const char* key() const {
|
||||||
return key_;
|
return key_;
|
||||||
|
Reference in New Issue
Block a user