From 73056f94769b212003fd0587199af4e723a9216a Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Wed, 18 Sep 2019 15:13:36 -0700 Subject: [PATCH 1/4] [clang-tidy] Replace C typedef with C++ using Found with modernize-use-using Added to .clang-tidy file. Signed-off-by: Rosen Penev --- .clang-tidy | 11 +++++++++++ src/lib_json/json_reader.cpp | 10 +++++----- src/lib_json/json_writer.cpp | 4 ++-- 3 files changed, 18 insertions(+), 7 deletions(-) create mode 100644 .clang-tidy diff --git a/.clang-tidy b/.clang-tidy new file mode 100644 index 000000000..4779fc139 --- /dev/null +++ b/.clang-tidy @@ -0,0 +1,11 @@ +--- +Checks: 'modernize-use-using' +WarningsAsErrors: '' +HeaderFilterRegex: '' +AnalyzeTemporaryDtors: false +FormatStyle: none +CheckOptions: + - key: modernize-use-using.IgnoreMacros + value: '0' +... + diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp index 6a1c76578..2e599690c 100644 --- a/src/lib_json/json_reader.cpp +++ b/src/lib_json/json_reader.cpp @@ -51,7 +51,7 @@ static size_t const stackLimit_g = namespace Json { #if __cplusplus >= 201103L || (defined(_CPPLIB_VER) && _CPPLIB_VER >= 520) -typedef std::unique_ptr CharReaderPtr; +using CharReaderPtr = std::unique_ptr; #else typedef std::auto_ptr CharReaderPtr; #endif @@ -895,8 +895,8 @@ OurFeatures OurFeatures::all() { return {}; } // for implementing JSON reading. class OurReader { public: - typedef char Char; - typedef const Char* Location; + using Char = char; + using Location = const Char *; struct StructuredError { ptrdiff_t offset_start; ptrdiff_t offset_limit; @@ -952,7 +952,7 @@ class OurReader { Location extra_; }; - typedef std::deque Errors; + using Errors = std::deque; bool readToken(Token& token); void skipSpaces(); @@ -997,7 +997,7 @@ class OurReader { static String normalizeEOL(Location begin, Location end); static bool containsNewLine(Location begin, Location end); - typedef std::stack Nodes; + using Nodes = std::stack; Nodes nodes_; Errors errors_; String document_; diff --git a/src/lib_json/json_writer.cpp b/src/lib_json/json_writer.cpp index 41dfd8cf6..4b91035c2 100644 --- a/src/lib_json/json_writer.cpp +++ b/src/lib_json/json_writer.cpp @@ -84,7 +84,7 @@ namespace Json { #if __cplusplus >= 201103L || (defined(_CPPLIB_VER) && _CPPLIB_VER >= 520) -typedef std::unique_ptr StreamWriterPtr; +using StreamWriterPtr = std::unique_ptr; #else typedef std::auto_ptr StreamWriterPtr; #endif @@ -887,7 +887,7 @@ struct BuiltStyledStreamWriter : public StreamWriter { void writeCommentAfterValueOnSameLine(Value const& root); static bool hasCommentForValue(const Value& value); - typedef std::vector ChildValues; + using ChildValues = std::vector; ChildValues childValues_; String indentString_; From 57277d6a3ccca1a6ff100961600f6b4bf754ec70 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Wed, 18 Sep 2019 15:16:42 -0700 Subject: [PATCH 2/4] [clang-tidy] Remove redundant member init Found with readability-redundant-member-init Added to .clang-tidy --- .clang-tidy | 2 +- src/lib_json/json_reader.cpp | 10 +++++----- src/lib_json/json_value.cpp | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.clang-tidy b/.clang-tidy index 4779fc139..6a1a2d215 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -1,5 +1,5 @@ --- -Checks: 'modernize-use-using' +Checks: 'modernize-use-using,readability-redundant-member-init' WarningsAsErrors: '' HeaderFilterRegex: '' AnalyzeTemporaryDtors: false diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp index 2e599690c..098286f73 100644 --- a/src/lib_json/json_reader.cpp +++ b/src/lib_json/json_reader.cpp @@ -86,11 +86,11 @@ bool Reader::containsNewLine(Reader::Location begin, Reader::Location end) { // ////////////////////////////////////////////////////////////////// Reader::Reader() - : errors_(), document_(), commentsBefore_(), features_(Features::all()) {} + : features_(Features::all()) {} Reader::Reader(const Features& features) - : errors_(), document_(), begin_(), end_(), current_(), lastValueEnd_(), - lastValue_(), commentsBefore_(), features_(features), collectComments_() { + : begin_(), end_(), current_(), lastValueEnd_(), + lastValue_(), features_(features), collectComments_() { } bool Reader::parse(const std::string& document, @@ -1023,8 +1023,8 @@ bool OurReader::containsNewLine(OurReader::Location begin, } OurReader::OurReader(OurFeatures const& features) - : errors_(), document_(), begin_(), end_(), current_(), lastValueEnd_(), - lastValue_(), commentsBefore_(), features_(features), collectComments_() { + : begin_(), end_(), current_(), lastValueEnd_(), + lastValue_(), features_(features), collectComments_() { } bool OurReader::parse(const char* beginDoc, diff --git a/src/lib_json/json_value.cpp b/src/lib_json/json_value.cpp index 4f71e77cc..628b754cd 100644 --- a/src/lib_json/json_value.cpp +++ b/src/lib_json/json_value.cpp @@ -1547,10 +1547,10 @@ Value::iterator Value::end() { // class PathArgument // ////////////////////////////////////////////////////////////////// -PathArgument::PathArgument() : key_() {} +PathArgument::PathArgument() {} PathArgument::PathArgument(ArrayIndex index) - : key_(), index_(index), kind_(kindIndex) {} + : index_(index), kind_(kindIndex) {} PathArgument::PathArgument(const char* key) : key_(key), index_(), kind_(kindKey) {} From 99d20e1eb57e039eab11c8834a7998497f255ce5 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Wed, 18 Sep 2019 15:20:01 -0700 Subject: [PATCH 3/4] [clang-tidy] Replace C casts with C++ ones Found with google-readability-casting Signed-off-by: Rosen Penev --- .clang-tidy | 2 +- src/lib_json/json_reader.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.clang-tidy b/.clang-tidy index 6a1a2d215..a75d41266 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -1,5 +1,5 @@ --- -Checks: 'modernize-use-using,readability-redundant-member-init' +Checks: 'google-readability-casting,modernize-use-using,readability-redundant-member-init' WarningsAsErrors: '' HeaderFilterRegex: '' AnalyzeTemporaryDtors: false diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp index 098286f73..857958e19 100644 --- a/src/lib_json/json_reader.cpp +++ b/src/lib_json/json_reader.cpp @@ -111,7 +111,7 @@ bool Reader::parse(std::istream& is, Value& root, bool collectComments) { // Since String is reference-counted, this at least does not // create an extra copy. String doc; - std::getline(is, doc, (char)EOF); + std::getline(is, doc, static_castEOF); return parse(doc.data(), doc.data() + doc.size(), root, collectComments); } From a0f801ceeca255ebf392998fde3d263898aed88d Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Wed, 18 Sep 2019 18:01:12 -0700 Subject: [PATCH 4/4] [clang-tidy] Use default member init Found with modernize-use-default-member-init Signed-off-by: Rosen Penev --- .clang-tidy | 2 +- src/lib_json/json_reader.cpp | 3 +-- src/lib_json/json_value.cpp | 4 ++-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.clang-tidy b/.clang-tidy index a75d41266..6b5e8018e 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -1,5 +1,5 @@ --- -Checks: 'google-readability-casting,modernize-use-using,readability-redundant-member-init' +Checks: 'google-readability-casting,modernize-use-default-member-init,modernize-use-using,readability-redundant-member-init' WarningsAsErrors: '' HeaderFilterRegex: '' AnalyzeTemporaryDtors: false diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp index 857958e19..d1ae192d9 100644 --- a/src/lib_json/json_reader.cpp +++ b/src/lib_json/json_reader.cpp @@ -89,8 +89,7 @@ Reader::Reader() : features_(Features::all()) {} Reader::Reader(const Features& features) - : begin_(), end_(), current_(), lastValueEnd_(), - lastValue_(), features_(features), collectComments_() { + : features_(features) { } bool Reader::parse(const std::string& document, diff --git a/src/lib_json/json_value.cpp b/src/lib_json/json_value.cpp index 628b754cd..cce2b2934 100644 --- a/src/lib_json/json_value.cpp +++ b/src/lib_json/json_value.cpp @@ -1553,10 +1553,10 @@ PathArgument::PathArgument(ArrayIndex index) : index_(index), kind_(kindIndex) {} PathArgument::PathArgument(const char* key) - : key_(key), index_(), kind_(kindKey) {} + : key_(key), kind_(kindKey) {} PathArgument::PathArgument(const String& key) - : key_(key.c_str()), index_(), kind_(kindKey) {} + : key_(key.c_str()), kind_(kindKey) {} // class Path // //////////////////////////////////////////////////////////////////