Added a default implementation in the Visitor class

This commit is contained in:
Benoit Blanchon
2021-02-21 13:37:07 +01:00
parent 1730304f46
commit 22904a48a6
4 changed files with 58 additions and 75 deletions

View File

@@ -9,40 +9,13 @@
#include <ArduinoJson/Numbers/arithmeticCompare.hpp>
#include <ArduinoJson/Polyfills/type_traits.hpp>
#include <ArduinoJson/Strings/IsString.hpp>
#include <ArduinoJson/Variant/Visitor.hpp>
namespace ARDUINOJSON_NAMESPACE {
class CollectionData;
struct ComparerBase : Visitor<CompareResult> {
CompareResult visitArray(const CollectionData &) {
return COMPARE_RESULT_DIFFER;
}
CompareResult visitBoolean(bool) {
return COMPARE_RESULT_DIFFER;
}
CompareResult visitFloat(Float) {
return COMPARE_RESULT_DIFFER;
}
CompareResult visitNegativeInteger(UInt) {
return COMPARE_RESULT_DIFFER;
}
CompareResult visitNull() {
return COMPARE_RESULT_DIFFER;
}
CompareResult visitObject(const CollectionData &) {
return COMPARE_RESULT_DIFFER;
}
CompareResult visitPositiveInteger(UInt) {
return COMPARE_RESULT_DIFFER;
}
CompareResult visitRawJson(const char *, size_t) {
return COMPARE_RESULT_DIFFER;
}
CompareResult visitString(const char *) {
return COMPARE_RESULT_DIFFER;
}
};
struct ComparerBase : Visitor<CompareResult> {};
template <typename T, typename Enable = void>
struct Comparer;