Renamed undocumented function isUndefined() to isUnbound()

This commit is contained in:
Benoit Blanchon
2021-12-16 14:55:26 +01:00
parent e16767af92
commit 0f529a3587
15 changed files with 26 additions and 24 deletions

View File

@ -12,11 +12,13 @@ HEAD
* Add safe bool idiom in `JsonString` * Add safe bool idiom in `JsonString`
* Add support for NUL in string values (issue #1646) * Add support for NUL in string values (issue #1646)
* Remove `DeserializationError == bool` and `DeserializationError != bool` * Remove `DeserializationError == bool` and `DeserializationError != bool`
* Renamed undocumented function `isUndefined()` to `isUnbound()`
* Fix `JsonVariant::memoryUsage()` for raw strings * Fix `JsonVariant::memoryUsage()` for raw strings
* Fix `call of overloaded 'swap(BasicJsonDocument&, BasicJsonDocument&)' is ambiguous` (issue #1678) * Fix `call of overloaded 'swap(BasicJsonDocument&, BasicJsonDocument&)' is ambiguous` (issue #1678)
* Fix inconsistent pool capacity between `BasicJsonDocument`'s copy and move constructors * Fix inconsistent pool capacity between `BasicJsonDocument`'s copy and move constructors
* Fix inconsistent pool capacity between `BasicJsonDocument`'s copy and move assignments * Fix inconsistent pool capacity between `BasicJsonDocument`'s copy and move assignments
* Fix return type of `StaticJsonDocument::operator=` * Fix return type of `StaticJsonDocument::operator=`
* Avoid pool reallocation in `BasicJsonDocument`'s copy assignment if capacity is the same
v6.18.5 (2021-09-28) v6.18.5 (2021-09-28)
------- -------

View File

@ -17,7 +17,7 @@ add_executable(JsonArrayTests
size.cpp size.cpp
std_string.cpp std_string.cpp
subscript.cpp subscript.cpp
undefined.cpp unbound.cpp
) )
add_test(JsonArray JsonArrayTests) add_test(JsonArray JsonArrayTests)

View File

@ -7,7 +7,7 @@
using namespace Catch::Matchers; using namespace Catch::Matchers;
TEST_CASE("Undefined JsonArray") { TEST_CASE("Unbound JsonArray") {
JsonArray array; JsonArray array;
SECTION("SubscriptFails") { SECTION("SubscriptFails") {

View File

@ -22,7 +22,7 @@ add_executable(JsonVariantTests
set.cpp set.cpp
subscript.cpp subscript.cpp
types.cpp types.cpp
undefined.cpp unbound.cpp
) )
add_test(JsonVariant JsonVariantTests) add_test(JsonVariant JsonVariantTests)

View File

@ -89,7 +89,7 @@ TEST_CASE("JsonVariant::set(JsonVariant)") {
unboundVariant.set(var1); unboundVariant.set(var1);
REQUIRE(unboundVariant.isUndefined()); REQUIRE(unboundVariant.isUnbound());
REQUIRE(unboundVariant.isNull()); REQUIRE(unboundVariant.isNull());
} }
} }

View File

@ -11,7 +11,7 @@ TEST_CASE("JsonVariant::is<T>()") {
DynamicJsonDocument doc(4096); DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>(); JsonVariant variant = doc.to<JsonVariant>();
SECTION("undefined") { SECTION("unbound") {
variant = JsonVariant(); variant = JsonVariant();
CHECK(variant.is<JsonObject>() == false); CHECK(variant.is<JsonObject>() == false);
@ -168,7 +168,7 @@ TEST_CASE("JsonVariantConst::is<T>()") {
JsonVariant variant = doc.to<JsonVariant>(); JsonVariant variant = doc.to<JsonVariant>();
JsonVariantConst cvariant = variant; JsonVariantConst cvariant = variant;
SECTION("undefined") { SECTION("unbound") {
cvariant = JsonVariantConst(); cvariant = JsonVariantConst();
CHECK(cvariant.is<JsonArray>() == false); CHECK(cvariant.is<JsonArray>() == false);

View File

@ -9,30 +9,30 @@ TEST_CASE("JsonVariant::operator|()") {
DynamicJsonDocument doc(4096); DynamicJsonDocument doc(4096);
JsonVariant variant = doc["value"].to<JsonVariant>(); JsonVariant variant = doc["value"].to<JsonVariant>();
SECTION("undefined") { SECTION("null") {
SECTION("undefined | const char*") { SECTION("null | const char*") {
std::string result = variant | "default"; std::string result = variant | "default";
REQUIRE(result == "default"); REQUIRE(result == "default");
} }
SECTION("undefined | int") { SECTION("null | int") {
int result = variant | 42; int result = variant | 42;
REQUIRE(result == 42); REQUIRE(result == 42);
} }
SECTION("undefined | bool") { SECTION("null | bool") {
bool result = variant | true; bool result = variant | true;
REQUIRE(result == true); REQUIRE(result == true);
} }
SECTION("undefined | ElementProxy") { SECTION("null | ElementProxy") {
doc["array"][0] = 42; doc["array"][0] = 42;
JsonVariantConst result = variant | doc["array"][0]; JsonVariantConst result = variant | doc["array"][0];
REQUIRE(result == 42); REQUIRE(result == 42);
} }
SECTION("undefined | MemberProxy") { SECTION("null | MemberProxy") {
doc["other"] = 42; doc["other"] = 42;
JsonVariantConst result = variant | doc["other"]; JsonVariantConst result = variant | doc["other"];

View File

@ -9,7 +9,7 @@ TEST_CASE("JsonVariant::operator[]") {
DynamicJsonDocument doc(4096); DynamicJsonDocument doc(4096);
JsonVariant var = doc.to<JsonVariant>(); JsonVariant var = doc.to<JsonVariant>();
SECTION("The JsonVariant is undefined") { SECTION("The JsonVariant is null") {
REQUIRE(0 == var.size()); REQUIRE(0 == var.size());
REQUIRE(var["0"].isNull()); REQUIRE(var["0"].isNull());
REQUIRE(var[0].isNull()); REQUIRE(var[0].isNull());
@ -136,7 +136,7 @@ TEST_CASE("JsonVariantConst::operator[]") {
JsonVariant var = doc.to<JsonVariant>(); JsonVariant var = doc.to<JsonVariant>();
JsonVariantConst cvar = var; JsonVariantConst cvar = var;
SECTION("The JsonVariant is undefined") { SECTION("The JsonVariant is null") {
REQUIRE(0 == cvar.size()); REQUIRE(0 == cvar.size());
REQUIRE(cvar["0"].isNull()); REQUIRE(cvar["0"].isNull());
REQUIRE(cvar[0].isNull()); REQUIRE(cvar[0].isNull());

View File

@ -5,7 +5,7 @@
#include <ArduinoJson.h> #include <ArduinoJson.h>
#include <catch.hpp> #include <catch.hpp>
TEST_CASE("JsonVariant undefined") { TEST_CASE("Unbound JsonVariant") {
JsonVariant variant; JsonVariant variant;
SECTION("as<T>()") { SECTION("as<T>()") {

View File

@ -31,7 +31,7 @@ static void checkVariant(T value, const std::string& expected) {
} }
TEST_CASE("serialize MsgPack value") { TEST_CASE("serialize MsgPack value") {
SECTION("undefined") { SECTION("unbound") {
checkVariant(JsonVariant(), "\xC0"); // we represent undefined as nil checkVariant(JsonVariant(), "\xC0"); // we represent undefined as nil
} }

View File

@ -139,14 +139,14 @@ class JsonDocument : public Visitable {
// containsKey(const __FlashStringHelper*) const // containsKey(const __FlashStringHelper*) const
template <typename TChar> template <typename TChar>
bool containsKey(TChar* key) const { bool containsKey(TChar* key) const {
return !getMember(key).isUndefined(); return !getMember(key).isUnbound();
} }
// containsKey(const std::string&) const // containsKey(const std::string&) const
// containsKey(const String&) const // containsKey(const String&) const
template <typename TString> template <typename TString>
bool containsKey(const TString& key) const { bool containsKey(const TString& key) const {
return !getMember(key).isUndefined(); return !getMember(key).isUnbound();
} }
// operator[](const std::string&) // operator[](const std::string&)

View File

@ -40,14 +40,14 @@ template <typename TObject>
template <typename TString> template <typename TString>
inline typename enable_if<IsString<TString>::value, bool>::type inline typename enable_if<IsString<TString>::value, bool>::type
ObjectShortcuts<TObject>::containsKey(const TString& key) const { ObjectShortcuts<TObject>::containsKey(const TString& key) const {
return !impl()->getMember(key).isUndefined(); return !impl()->getMember(key).isUnbound();
} }
template <typename TObject> template <typename TObject>
template <typename TChar> template <typename TChar>
inline typename enable_if<IsString<TChar*>::value, bool>::type inline typename enable_if<IsString<TChar*>::value, bool>::type
ObjectShortcuts<TObject>::containsKey(TChar* key) const { ObjectShortcuts<TObject>::containsKey(TChar* key) const {
return !impl()->getMember(key).isUndefined(); return !impl()->getMember(key).isUnbound();
} }
template <typename TObject> template <typename TObject>

View File

@ -77,7 +77,7 @@ class ObjectConstRef : public ObjectRefBase<const CollectionData>,
// containsKey(const String&) const // containsKey(const String&) const
template <typename TString> template <typename TString>
FORCE_INLINE bool containsKey(const TString& key) const { FORCE_INLINE bool containsKey(const TString& key) const {
return !getMember(key).isUndefined(); return !getMember(key).isUnbound();
} }
// containsKey(char*) const // containsKey(char*) const
@ -85,7 +85,7 @@ class ObjectConstRef : public ObjectRefBase<const CollectionData>,
// containsKey(const __FlashStringHelper*) const // containsKey(const __FlashStringHelper*) const
template <typename TChar> template <typename TChar>
FORCE_INLINE bool containsKey(TChar* key) const { FORCE_INLINE bool containsKey(TChar* key) const {
return !getMember(key).isUndefined(); return !getMember(key).isUnbound();
} }
// getMember(const std::string&) const // getMember(const std::string&) const

View File

@ -17,7 +17,7 @@ CompareResult compare(const T1 &lhs, const T2 &rhs); // VariantCompare.cpp
template <typename TVariant> template <typename TVariant>
struct VariantOperators { struct VariantOperators {
// Returns the default value if the VariantRef is undefined or incompatible // Returns the default value if the VariantRef is unbound or incompatible
// //
// int operator|(JsonVariant, int) // int operator|(JsonVariant, int)
// float operator|(JsonVariant, float) // float operator|(JsonVariant, float)

View File

@ -32,7 +32,7 @@ class VariantRefBase : public VariantTag {
return variantIsNull(_data); return variantIsNull(_data);
} }
FORCE_INLINE bool isUndefined() const { FORCE_INLINE bool isUnbound() const {
return !_data; return !_data;
} }