forked from bblanchon/ArduinoJson
visitNull()
takes a nullptr_t
This commit is contained in:
@ -93,7 +93,7 @@ class JsonSerializer : public VariantDataVisitor<size_t> {
|
|||||||
return bytesWritten();
|
return bytesWritten();
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t visitNull() {
|
size_t visitNull(nullptr_t) {
|
||||||
formatter_.writeRaw("null");
|
formatter_.writeRaw("null");
|
||||||
return bytesWritten();
|
return bytesWritten();
|
||||||
}
|
}
|
||||||
|
@ -172,7 +172,7 @@ class MsgPackSerializer : public VariantDataVisitor<size_t> {
|
|||||||
return bytesWritten();
|
return bytesWritten();
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t visitNull() {
|
size_t visitNull(nullptr_t) {
|
||||||
writeByte(0xC0);
|
writeByte(0xC0);
|
||||||
return bytesWritten();
|
return bytesWritten();
|
||||||
}
|
}
|
||||||
|
@ -31,7 +31,7 @@ struct JsonVariantVisitor {
|
|||||||
return TResult();
|
return TResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
TResult visitNull() {
|
TResult visitNull(nullptr_t) {
|
||||||
return TResult();
|
return TResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -92,8 +92,8 @@ class VisitorAdapter {
|
|||||||
return visitor_->visitBoolean(value);
|
return visitor_->visitBoolean(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
result_type visitNull() {
|
result_type visitNull(nullptr_t) {
|
||||||
return visitor_->visitNull();
|
return visitor_->visitNull(nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@ -106,7 +106,7 @@ typename TVisitor::result_type accept(JsonVariantConst variant,
|
|||||||
TVisitor& visitor) {
|
TVisitor& visitor) {
|
||||||
auto data = VariantAttorney::getData(variant);
|
auto data = VariantAttorney::getData(variant);
|
||||||
if (!data)
|
if (!data)
|
||||||
return visitor.visitNull();
|
return visitor.visitNull(nullptr);
|
||||||
auto resources = VariantAttorney::getResourceManager(variant);
|
auto resources = VariantAttorney::getResourceManager(variant);
|
||||||
VisitorAdapter<TVisitor> adapter(visitor, resources);
|
VisitorAdapter<TVisitor> adapter(visitor, resources);
|
||||||
return data->accept(adapter);
|
return data->accept(adapter);
|
||||||
|
@ -35,7 +35,7 @@ struct Comparer<T, typename enable_if<IsString<T>::value>::type>
|
|||||||
return COMPARE_RESULT_EQUAL;
|
return COMPARE_RESULT_EQUAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
CompareResult visitNull() {
|
CompareResult visitNull(nullptr_t) {
|
||||||
if (adaptString(rhs).isNull())
|
if (adaptString(rhs).isNull())
|
||||||
return COMPARE_RESULT_EQUAL;
|
return COMPARE_RESULT_EQUAL;
|
||||||
else
|
else
|
||||||
@ -69,7 +69,7 @@ struct Comparer<T, typename enable_if<is_integral<T>::value ||
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct NullComparer : ComparerBase {
|
struct NullComparer : ComparerBase {
|
||||||
CompareResult visitNull() {
|
CompareResult visitNull(nullptr_t) {
|
||||||
return COMPARE_RESULT_EQUAL;
|
return COMPARE_RESULT_EQUAL;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -167,7 +167,7 @@ struct VariantComparer : ComparerBase {
|
|||||||
return reverseResult(comparer);
|
return reverseResult(comparer);
|
||||||
}
|
}
|
||||||
|
|
||||||
CompareResult visitNull() {
|
CompareResult visitNull(nullptr_t) {
|
||||||
NullComparer comparer;
|
NullComparer comparer;
|
||||||
return reverseResult(comparer);
|
return reverseResult(comparer);
|
||||||
}
|
}
|
||||||
|
@ -58,7 +58,7 @@ class VariantData {
|
|||||||
return visitor.visitBoolean(content_.asBoolean != 0);
|
return visitor.visitBoolean(content_.asBoolean != 0);
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return visitor.visitNull();
|
return visitor.visitNull(nullptr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -68,7 +68,7 @@ class VariantData {
|
|||||||
if (var != 0)
|
if (var != 0)
|
||||||
return var->accept(visitor);
|
return var->accept(visitor);
|
||||||
else
|
else
|
||||||
return visitor.visitNull();
|
return visitor.visitNull(nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
VariantData* addElement(ResourceManager* resources) {
|
VariantData* addElement(ResourceManager* resources) {
|
||||||
|
@ -31,7 +31,7 @@ struct VariantDataVisitor {
|
|||||||
return TResult();
|
return TResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
TResult visitNull() {
|
TResult visitNull(nullptr_t) {
|
||||||
return TResult();
|
return TResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user