memory.cpp (584B)
1 #include "yaml-cpp/node/detail/memory.h" 2 #include "yaml-cpp/node/detail/node.h" // IWYU pragma: keep 3 #include "yaml-cpp/node/ptr.h" 4 5 namespace YAML { 6 namespace detail { 7 8 void memory_holder::merge(memory_holder& rhs) { 9 if (m_pMemory == rhs.m_pMemory) 10 return; 11 12 m_pMemory->merge(*rhs.m_pMemory); 13 rhs.m_pMemory = m_pMemory; 14 } 15 16 node& memory::create_node() { 17 shared_node pNode(new node); 18 m_nodes.insert(pNode); 19 return *pNode; 20 } 21 22 void memory::merge(const memory& rhs) { 23 m_nodes.insert(rhs.m_nodes.begin(), rhs.m_nodes.end()); 24 } 25 } // namespace detail 26 } // namespace YAML