From 28741f589289076d03e70d6d94aa6f77f9850492 Mon Sep 17 00:00:00 2001 From: Daniel D'Avella Date: Tue, 8 May 2018 15:39:23 -0400 Subject: [PATCH 1/3] Make private members of Node class protected instead --- include/yaml-cpp/node/node.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/yaml-cpp/node/node.h b/include/yaml-cpp/node/node.h index 1ded7d2..dc92d64 100644 --- a/include/yaml-cpp/node/node.h +++ b/include/yaml-cpp/node/node.h @@ -113,7 +113,7 @@ class YAML_CPP_API Node { template void force_insert(const Key& key, const Value& value); - private: + protected: enum Zombie { ZombieNode }; explicit Node(Zombie); explicit Node(detail::node& node, detail::shared_memory_holder pMemory); @@ -128,7 +128,7 @@ class YAML_CPP_API Node { void AssignData(const Node& rhs); void AssignNode(const Node& rhs); - private: + protected: bool m_isValid; mutable detail::shared_memory_holder m_pMemory; mutable detail::node* m_pNode; From f881758b840725523d02a4c605e0b3e45b6989d6 Mon Sep 17 00:00:00 2001 From: Daniel D'Avella Date: Thu, 10 May 2018 10:32:01 -0400 Subject: [PATCH 2/3] Make nodebuilder part of the public API --- {src => include/yaml-cpp}/nodebuilder.h | 0 src/node.cpp | 2 +- src/nodebuilder.cpp | 2 +- src/parse.cpp | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename {src => include/yaml-cpp}/nodebuilder.h (100%) diff --git a/src/nodebuilder.h b/include/yaml-cpp/nodebuilder.h similarity index 100% rename from src/nodebuilder.h rename to include/yaml-cpp/nodebuilder.h diff --git a/src/node.cpp b/src/node.cpp index 2088e13..3fab63b 100644 --- a/src/node.cpp +++ b/src/node.cpp @@ -1,5 +1,5 @@ #include "yaml-cpp/node/node.h" -#include "nodebuilder.h" +#include "yaml-cpp/nodebuilder.h" #include "nodeevents.h" namespace YAML { diff --git a/src/nodebuilder.cpp b/src/nodebuilder.cpp index 093d2ef..9a2ecc3 100644 --- a/src/nodebuilder.cpp +++ b/src/nodebuilder.cpp @@ -1,7 +1,7 @@ #include #include -#include "nodebuilder.h" +#include "yaml-cpp/nodebuilder.h" #include "yaml-cpp/node/detail/node.h" #include "yaml-cpp/node/impl.h" #include "yaml-cpp/node/node.h" diff --git a/src/parse.cpp b/src/parse.cpp index 0b2ae4a..32fbaea 100644 --- a/src/parse.cpp +++ b/src/parse.cpp @@ -6,7 +6,7 @@ #include "yaml-cpp/node/node.h" #include "yaml-cpp/node/impl.h" #include "yaml-cpp/parser.h" -#include "nodebuilder.h" +#include "yaml-cpp/nodebuilder.h" namespace YAML { Node Load(const std::string& input) { From acf5912d90f197811182a974f39b5e4122c25e61 Mon Sep 17 00:00:00 2001 From: Daniel D'Avella Date: Thu, 10 May 2018 10:32:52 -0400 Subject: [PATCH 3/3] Change nodebuilder private members to protected --- include/yaml-cpp/nodebuilder.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/yaml-cpp/nodebuilder.h b/include/yaml-cpp/nodebuilder.h index a6a47f0..f0481de 100644 --- a/include/yaml-cpp/nodebuilder.h +++ b/include/yaml-cpp/nodebuilder.h @@ -47,13 +47,13 @@ class NodeBuilder : public EventHandler { anchor_t anchor, EmitterStyle::value style); virtual void OnMapEnd(); - private: + protected: detail::node& Push(const Mark& mark, anchor_t anchor); void Push(detail::node& node); void Pop(); void RegisterAnchor(anchor_t anchor, detail::node& node); - private: + protected: detail::shared_memory_holder m_pMemory; detail::node* m_pRoot;