forked from bblanchon/ArduinoJson
Inline variantAccept()
This commit is contained in:
@ -11,15 +11,6 @@
|
||||
|
||||
namespace ARDUINOJSON_NAMESPACE {
|
||||
|
||||
template <typename TVisitor>
|
||||
inline typename TVisitor::result_type variantAccept(const VariantData *var,
|
||||
TVisitor &visitor) {
|
||||
if (var != 0)
|
||||
return var->resolve()->accept(visitor);
|
||||
else
|
||||
return visitor.visitNull();
|
||||
}
|
||||
|
||||
inline const CollectionData *variantAsArray(const VariantData *var) {
|
||||
return var != 0 ? var->resolve()->asArray() : 0;
|
||||
}
|
||||
|
@ -30,7 +30,9 @@ class VariantRefBase : public VariantTag {
|
||||
public:
|
||||
template <typename TVisitor>
|
||||
typename TVisitor::result_type accept(TVisitor &visitor) const {
|
||||
return variantAccept(_data, visitor);
|
||||
if (!_data)
|
||||
return visitor.visitNull();
|
||||
return _data->resolve()->accept(visitor);
|
||||
}
|
||||
|
||||
FORCE_INLINE bool isNull() const {
|
||||
|
Reference in New Issue
Block a user