From f2ec46663f43a2bcf53e654a7070e47019333041 Mon Sep 17 00:00:00 2001 From: Assaf Passal Date: Wed, 27 Jul 2022 00:54:53 +0300 Subject: [PATCH] remove virtual, and implemnt the makeCharReader in the CharReeader::Factory interface --- include/json/reader.h | 3 +-- src/lib_json/json_reader.cpp | 7 ++++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/json/reader.h b/include/json/reader.h index 9e44d12..6fe7fba 100644 --- a/include/json/reader.h +++ b/include/json/reader.h @@ -271,7 +271,7 @@ public: * \throw std::exception if something goes wrong (e.g. invalid settings) */ virtual CharReader* newCharReader() const = 0; - virtual std::unique_ptr makeCharReader() const = 0; + std::unique_ptr makeCharReader() const; }; // Factory }; // CharReader @@ -342,7 +342,6 @@ public: * \deprecated Use makeCharReader. */ CharReader* newCharReader() const override; - std::unique_ptr makeCharReader() const override; /** \return true if 'settings' are legal and consistent; * otherwise, indicate bad settings via 'invalid'. */ diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp index b79cafb..364b453 100644 --- a/src/lib_json/json_reader.cpp +++ b/src/lib_json/json_reader.cpp @@ -1872,6 +1872,10 @@ std::vector OurReader::getStructuredErrors() const { return allErrors; } +std::unique_ptr CharReader::Factory::makeCharReader() const { + return std::unique_ptr(newCharReader()); +} + class OurCharReader : public CharReader { bool const collectComments_; OurReader reader_; @@ -1891,9 +1895,6 @@ public: CharReaderBuilder::CharReaderBuilder() { setDefaults(&settings_); } CharReaderBuilder::~CharReaderBuilder() = default; -std::unique_ptr CharReaderBuilder::makeCharReader() const { - return std::unique_ptr(newCharReader()); -} CharReader* CharReaderBuilder::newCharReader() const { bool collectComments = settings_["collectComments"].asBool();