Fix clang-tidy hicpp-named-parameter and misc-const-correctness
- Drop the unused reversed-order operator!= overload from utils::istreambuf_sentinel (only iterator != sentinel is ever evaluated) and name the remaining friend's sentinel parameter, fixing hicpp-named-parameter/readability-named-parameter. - Mark the istreambuf_iterator first/last helper variable const in the five binary-format sentinel tests, fixing misc-const-correctness. Signed-off-by: Niels Lohmann <mail@nlohmann.me>
This commit is contained in:
6 files changed
+9
-12
No files matched your search
@@ -32,15 +32,12 @@ inline std::vector<std::uint8_t> read_binary_file(const std::string& filename)
|
|||||||
|
|
||||||
// sentinel for istreambuf_iterator; compares != true until EOF is reached
|
// sentinel for istreambuf_iterator; compares != true until EOF is reached
|
||||||
// lets tests read a file directly via the new iterator+sentinel overloads
|
// lets tests read a file directly via the new iterator+sentinel overloads
|
||||||
// instead of buffering the whole file into a vector first
|
// instead of buffering the whole file into a vector first.
|
||||||
|
// Only the iterator-first direction (it != sentinel) is ever evaluated by
|
||||||
|
// the library's parse loop, so no reversed-order overload is needed.
|
||||||
struct istreambuf_sentinel
|
struct istreambuf_sentinel
|
||||||
{
|
{
|
||||||
friend bool operator!=(const std::istreambuf_iterator<char>& it, const istreambuf_sentinel&) noexcept
|
friend bool operator!=(const std::istreambuf_iterator<char>& it, const istreambuf_sentinel& /*unused*/) noexcept
|
||||||
{
|
|
||||||
return it != std::istreambuf_iterator<char>();
|
|
||||||
}
|
|
||||||
|
|
||||||
friend bool operator!=(const istreambuf_sentinel&, const std::istreambuf_iterator<char>& it) noexcept
|
|
||||||
{
|
{
|
||||||
return it != std::istreambuf_iterator<char>();
|
return it != std::istreambuf_iterator<char>();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3703,7 +3703,7 @@ TEST_CASE("Parse BJData directly from a file using iterator and sentinel")
|
|||||||
{
|
{
|
||||||
std::string const filename = TEST_DATA_DIRECTORY "/json_testsuite/sample.json.bjdata";
|
std::string const filename = TEST_DATA_DIRECTORY "/json_testsuite/sample.json.bjdata";
|
||||||
std::ifstream file(filename, std::ios::binary);
|
std::ifstream file(filename, std::ios::binary);
|
||||||
std::istreambuf_iterator<char> first(file);
|
const std::istreambuf_iterator<char> first(file);
|
||||||
const json parsed = json::from_bjdata(first, utils::istreambuf_sentinel{});
|
const json parsed = json::from_bjdata(first, utils::istreambuf_sentinel{});
|
||||||
CHECK((parsed.is_object() || parsed.is_array()));
|
CHECK((parsed.is_object() || parsed.is_array()));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1216,7 +1216,7 @@ TEST_CASE("Parse BSON directly from a file using iterator and sentinel")
|
|||||||
const json expected = json::parse(f_json);
|
const json expected = json::parse(f_json);
|
||||||
|
|
||||||
std::ifstream file(filename + ".bson", std::ios::binary);
|
std::ifstream file(filename + ".bson", std::ios::binary);
|
||||||
std::istreambuf_iterator<char> first(file);
|
const std::istreambuf_iterator<char> first(file);
|
||||||
const json parsed = json::from_bson(first, utils::istreambuf_sentinel{});
|
const json parsed = json::from_bson(first, utils::istreambuf_sentinel{});
|
||||||
CHECK(parsed == expected);
|
CHECK(parsed == expected);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1925,7 +1925,7 @@ TEST_CASE("Parse CBOR directly from a file using iterator and sentinel")
|
|||||||
{
|
{
|
||||||
std::string const filename = TEST_DATA_DIRECTORY "/json_testsuite/sample.json.cbor";
|
std::string const filename = TEST_DATA_DIRECTORY "/json_testsuite/sample.json.cbor";
|
||||||
std::ifstream file(filename, std::ios::binary);
|
std::ifstream file(filename, std::ios::binary);
|
||||||
std::istreambuf_iterator<char> first(file);
|
const std::istreambuf_iterator<char> first(file);
|
||||||
const json parsed = json::from_cbor(first, utils::istreambuf_sentinel{});
|
const json parsed = json::from_cbor(first, utils::istreambuf_sentinel{});
|
||||||
CHECK((parsed.is_object() || parsed.is_array()));
|
CHECK((parsed.is_object() || parsed.is_array()));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1645,7 +1645,7 @@ TEST_CASE("Parse MessagePack directly from a file using iterator and sentinel")
|
|||||||
{
|
{
|
||||||
std::string const filename = TEST_DATA_DIRECTORY "/json_testsuite/sample.json.msgpack";
|
std::string const filename = TEST_DATA_DIRECTORY "/json_testsuite/sample.json.msgpack";
|
||||||
std::ifstream file(filename, std::ios::binary);
|
std::ifstream file(filename, std::ios::binary);
|
||||||
std::istreambuf_iterator<char> first(file);
|
const std::istreambuf_iterator<char> first(file);
|
||||||
const json parsed = json::from_msgpack(first, utils::istreambuf_sentinel{});
|
const json parsed = json::from_msgpack(first, utils::istreambuf_sentinel{});
|
||||||
CHECK((parsed.is_object() || parsed.is_array()));
|
CHECK((parsed.is_object() || parsed.is_array()));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2397,7 +2397,7 @@ TEST_CASE("Parse UBJSON directly from a file using iterator and sentinel")
|
|||||||
{
|
{
|
||||||
std::string const filename = TEST_DATA_DIRECTORY "/json_testsuite/sample.json.ubjson";
|
std::string const filename = TEST_DATA_DIRECTORY "/json_testsuite/sample.json.ubjson";
|
||||||
std::ifstream file(filename, std::ios::binary);
|
std::ifstream file(filename, std::ios::binary);
|
||||||
std::istreambuf_iterator<char> first(file);
|
const std::istreambuf_iterator<char> first(file);
|
||||||
const json parsed = json::from_ubjson(first, utils::istreambuf_sentinel{});
|
const json parsed = json::from_ubjson(first, utils::istreambuf_sentinel{});
|
||||||
CHECK((parsed.is_object() || parsed.is_array()));
|
CHECK((parsed.is_object() || parsed.is_array()));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user