From c9ff2c8c4cf90620434e3c3082351f3492c1c95c Mon Sep 17 00:00:00 2001 From: garethsb-sony Date: Mon, 21 Jan 2019 11:00:06 +0000 Subject: [PATCH] json_validator used to be copyable; it can still be movable --- src/json-schema.hpp | 2 ++ src/json-validator.cpp | 8 +++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/json-schema.hpp b/src/json-schema.hpp index 46dc600..5eaf31d 100644 --- a/src/json-schema.hpp +++ b/src/json-schema.hpp @@ -139,7 +139,9 @@ class JSON_SCHEMA_VALIDATOR_API json_validator public: json_validator(std::function loader = nullptr, std::function format = nullptr); + json_validator(json_validator&&); ~json_validator(); + json_validator& operator=(json_validator&&); // insert and set thea root-schema void set_root_schema(const json &); diff --git a/src/json-validator.cpp b/src/json-validator.cpp index fbcb9ed..6903fe2 100644 --- a/src/json-validator.cpp +++ b/src/json-validator.cpp @@ -1087,9 +1087,11 @@ json_validator::json_validator(std::function loa { } -json_validator::~json_validator() -{ -} +// move constructor, destructor and move assignment operator can be defaulted here +// where root_schema is a complete type +json_validator::json_validator(json_validator&&) = default; +json_validator::~json_validator() = default; +json_validator& json_validator::operator=(json_validator&&) = default; void json_validator::set_root_schema(const json &schema) {