diff --git a/include/json/features.h b/include/json/features.h index 72eb6a8..ba25e8d 100644 --- a/include/json/features.h +++ b/include/json/features.h @@ -41,17 +41,17 @@ public: Features(); /// \c true if comments are allowed. Default: \c true. - bool allowComments_; + bool allowComments_{true}; /// \c true if root must be either an array or an object value. Default: \c /// false. - bool strictRoot_; + bool strictRoot_{false}; /// \c true if dropped null placeholders are allowed. Default: \c false. - bool allowDroppedNullPlaceholders_; + bool allowDroppedNullPlaceholders_{false}; /// \c true if numeric object key are allowed. Default: \c false. - bool allowNumericKeys_; + bool allowNumericKeys_{false}; }; } // namespace Json diff --git a/include/json/reader.h b/include/json/reader.h index 58cb58b..1af5cb0 100644 --- a/include/json/reader.h +++ b/include/json/reader.h @@ -242,14 +242,14 @@ private: Nodes nodes_; Errors errors_; JSONCPP_STRING document_; - Location begin_; - Location end_; - Location current_; - Location lastValueEnd_; - Value* lastValue_; + Location begin_{}; + Location end_{}; + Location current_{}; + Location lastValueEnd_{}; + Value* lastValue_{}; JSONCPP_STRING commentsBefore_; Features features_; - bool collectComments_; + bool collectComments_{}; }; // Reader /** Interface for reading JSON from a char array. diff --git a/include/json/value.h b/include/json/value.h index 71bc65c..8321de7 100644 --- a/include/json/value.h +++ b/include/json/value.h @@ -630,7 +630,7 @@ private: void setComment(const char* text, size_t len); - char* comment_; + char* comment_{nullptr}; }; // struct MemberNamesTransform @@ -678,8 +678,8 @@ public: private: enum Kind { kindNone = 0, kindIndex, kindKey }; JSONCPP_STRING key_; - ArrayIndex index_; - Kind kind_; + ArrayIndex index_{}; + Kind kind_{kindNone}; }; /** \brief Experimental and untested: represents a "path" to access a node. @@ -780,7 +780,7 @@ protected: private: Value::ObjectValues::iterator current_; // Indicates that iterator is for a null value. - bool isNull_; + bool isNull_{true}; public: // For some reason, BORLAND needs these at the end, rather diff --git a/include/json/writer.h b/include/json/writer.h index 34e71ed..1653260 100644 --- a/include/json/writer.h +++ b/include/json/writer.h @@ -189,9 +189,9 @@ private: void writeValue(const Value& value); JSONCPP_STRING document_; - bool yamlCompatibilityEnabled_; - bool dropNullPlaceholders_; - bool omitEndingLineFeed_; + bool yamlCompatibilityEnabled_{false}; + bool dropNullPlaceholders_{false}; + bool omitEndingLineFeed_{false}; }; #if defined(_MSC_VER) #pragma warning(pop) @@ -257,9 +257,9 @@ private: ChildValues childValues_; JSONCPP_STRING document_; JSONCPP_STRING indentString_; - unsigned int rightMargin_; - unsigned int indentSize_; - bool addChildValues_; + unsigned int rightMargin_{74}; + unsigned int indentSize_{3}; + bool addChildValues_{false}; }; #if defined(_MSC_VER) #pragma warning(pop) @@ -331,7 +331,7 @@ private: ChildValues childValues_; JSONCPP_OSTREAM* document_; JSONCPP_STRING indentString_; - unsigned int rightMargin_; + unsigned int rightMargin_{74}; JSONCPP_STRING indentation_; bool addChildValues_ : 1; bool indented_ : 1; diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp index c5af014..e1dc212 100644 --- a/src/lib_json/json_reader.cpp +++ b/src/lib_json/json_reader.cpp @@ -60,8 +60,7 @@ typedef std::auto_ptr CharReaderPtr; // //////////////////////////////// Features::Features() - : allowComments_(true), strictRoot_(false), - allowDroppedNullPlaceholders_(false), allowNumericKeys_(false) {} + {} Features Features::all() { return {}; } diff --git a/src/lib_json/json_value.cpp b/src/lib_json/json_value.cpp index 2445d31..76c14a2 100644 --- a/src/lib_json/json_value.cpp +++ b/src/lib_json/json_value.cpp @@ -233,7 +233,7 @@ JSONCPP_NORETURN void throwLogicError(JSONCPP_STRING const& msg) { // ////////////////////////////////////////////////////////////////// // ////////////////////////////////////////////////////////////////// -Value::CommentInfo::CommentInfo() : comment_(nullptr) {} +Value::CommentInfo::CommentInfo() {} Value::CommentInfo::~CommentInfo() { if (comment_) @@ -1575,7 +1575,7 @@ Value::iterator Value::end() { // class PathArgument // ////////////////////////////////////////////////////////////////// -PathArgument::PathArgument() : key_(), index_(), kind_(kindNone) {} +PathArgument::PathArgument() : key_() {} PathArgument::PathArgument(ArrayIndex index) : key_(), index_(index), kind_(kindIndex) {} diff --git a/src/lib_json/json_valueiterator.inl b/src/lib_json/json_valueiterator.inl index 7cc3792..4a2fc2e 100644 --- a/src/lib_json/json_valueiterator.inl +++ b/src/lib_json/json_valueiterator.inl @@ -16,7 +16,7 @@ namespace Json { // ////////////////////////////////////////////////////////////////// ValueIteratorBase::ValueIteratorBase() - : current_(), isNull_(true) { + : current_() { } ValueIteratorBase::ValueIteratorBase( diff --git a/src/lib_json/json_writer.cpp b/src/lib_json/json_writer.cpp index 54fcb4f..02d9a74 100644 --- a/src/lib_json/json_writer.cpp +++ b/src/lib_json/json_writer.cpp @@ -352,8 +352,8 @@ Writer::~Writer() {} // ////////////////////////////////////////////////////////////////// FastWriter::FastWriter() - : yamlCompatibilityEnabled_(false), dropNullPlaceholders_(false), - omitEndingLineFeed_(false) {} + + {} void FastWriter::enableYAMLCompatibility() { yamlCompatibilityEnabled_ = true; } @@ -428,7 +428,7 @@ void FastWriter::writeValue(const Value& value) { // ////////////////////////////////////////////////////////////////// StyledWriter::StyledWriter() - : rightMargin_(74), indentSize_(3), addChildValues_(false) {} + {} JSONCPP_STRING StyledWriter::write(const Value& root) { document_.clear(); diff --git a/src/test_lib_json/jsontest.cpp b/src/test_lib_json/jsontest.cpp index 03703c9..0329eea 100644 --- a/src/test_lib_json/jsontest.cpp +++ b/src/test_lib_json/jsontest.cpp @@ -74,7 +74,7 @@ namespace JsonTest { // ////////////////////////////////////////////////////////////////// TestResult::TestResult() - : predicateId_(1), lastUsedPredicateId_(0), messageTarget_(nullptr) { + { // The root predicate has id 0 rootPredicateNode_.id_ = 0; rootPredicateNode_.next_ = nullptr; @@ -205,7 +205,7 @@ TestResult& TestResult::operator<<(bool value) { // class TestCase // ////////////////////////////////////////////////////////////////// -TestCase::TestCase() : result_(nullptr) {} +TestCase::TestCase() {} TestCase::~TestCase() {} diff --git a/src/test_lib_json/jsontest.h b/src/test_lib_json/jsontest.h index e508282..7650422 100644 --- a/src/test_lib_json/jsontest.h +++ b/src/test_lib_json/jsontest.h @@ -60,7 +60,7 @@ public: /// Not encapsulated to prevent step into when debugging failed assertions /// Incremented by one on assertion predicate entry, decreased by one /// by addPredicateContext(). - PredicateContext::Id predicateId_; + PredicateContext::Id predicateId_{1}; /// \internal Implementation detail for predicate macros PredicateContext* predicateStackTail_; @@ -109,9 +109,9 @@ private: Failures failures_; JSONCPP_STRING name_; PredicateContext rootPredicateNode_; - PredicateContext::Id lastUsedPredicateId_; + PredicateContext::Id lastUsedPredicateId_{0}; /// Failure which is the target of the messages added using operator << - Failure* messageTarget_; + Failure* messageTarget_{nullptr}; }; class TestCase { @@ -125,7 +125,7 @@ public: virtual const char* testName() const = 0; protected: - TestResult* result_; + TestResult* result_{nullptr}; private: virtual void runTestCase() = 0; diff --git a/src/test_lib_json/main.cpp b/src/test_lib_json/main.cpp index d0315d7..b4f3f59 100644 --- a/src/test_lib_json/main.cpp +++ b/src/test_lib_json/main.cpp @@ -82,19 +82,19 @@ struct ValueTest : JsonTest::TestCase { /// Initialize all checks to \c false by default. IsCheck(); - bool isObject_; - bool isArray_; - bool isBool_; - bool isString_; - bool isNull_; + bool isObject_{false}; + bool isArray_{false}; + bool isBool_{false}; + bool isString_{false}; + bool isNull_{false}; - bool isInt_; - bool isInt64_; - bool isUInt_; - bool isUInt64_; - bool isIntegral_; - bool isDouble_; - bool isNumeric_; + bool isInt_{false}; + bool isInt64_{false}; + bool isUInt_{false}; + bool isUInt64_{false}; + bool isIntegral_{false}; + bool isDouble_{false}; + bool isNumeric_{false}; }; void checkConstMemberCount(const Json::Value& value, @@ -1331,10 +1331,8 @@ void ValueTest::checkMemberCount(Json::Value& value, } ValueTest::IsCheck::IsCheck() - : isObject_(false), isArray_(false), isBool_(false), isString_(false), - isNull_(false), isInt_(false), isInt64_(false), isUInt_(false), - isUInt64_(false), isIntegral_(false), isDouble_(false), - isNumeric_(false) {} + + {} void ValueTest::checkIs(const Json::Value& value, const IsCheck& check) { JSONTEST_ASSERT_EQUAL(check.isObject_, value.isObject());