/src/yaml-cpp/src/memory.cpp
Line | Count | Source |
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 | 0 | void memory_holder::merge(memory_holder& rhs) { |
9 | 0 | if (m_pMemory == rhs.m_pMemory) |
10 | 0 | return; |
11 | | |
12 | 0 | if (m_pMemory->size() < rhs.m_pMemory->size()) { |
13 | 0 | std::swap(m_pMemory, rhs.m_pMemory); |
14 | 0 | } |
15 | |
|
16 | 0 | m_pMemory->merge(*rhs.m_pMemory); |
17 | 0 | rhs.m_pMemory = m_pMemory; |
18 | 0 | } |
19 | | |
20 | 3.30M | node& memory::create_node() { |
21 | 3.30M | shared_node pNode(std::make_shared<node>()); |
22 | 3.30M | m_nodes.insert(pNode); |
23 | 3.30M | return *pNode; |
24 | 3.30M | } |
25 | | |
26 | 0 | void memory::merge(const memory& rhs) { |
27 | 0 | m_nodes.insert(rhs.m_nodes.begin(), rhs.m_nodes.end()); |
28 | 0 | } |
29 | | |
30 | 0 | size_t memory::size() const { |
31 | 0 | return m_nodes.size(); |
32 | 0 | } |
33 | | } // namespace detail |
34 | | } // namespace YAML |