LCOV - code coverage report
Current view: top level - usr/include/yaml-cpp/node/detail - memory.h (source / functions) Hit Total Coverage
Test: jami-coverage-filtered.info Lines: 3 3 100.0 %
Date: 2025-08-24 09:11:10 Functions: 3 3 100.0 %

          Line data    Source code
       1             : #ifndef VALUE_DETAIL_MEMORY_H_62B23520_7C8E_11DE_8A39_0800200C9A66
       2             : #define VALUE_DETAIL_MEMORY_H_62B23520_7C8E_11DE_8A39_0800200C9A66
       3             : 
       4             : #if defined(_MSC_VER) ||                                            \
       5             :     (defined(__GNUC__) && (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) || \
       6             :      (__GNUC__ >= 4))  // GCC supports "pragma once" correctly since 3.4
       7             : #pragma once
       8             : #endif
       9             : 
      10             : #include <set>
      11             : 
      12             : #include "yaml-cpp/dll.h"
      13             : #include "yaml-cpp/node/ptr.h"
      14             : 
      15             : namespace YAML {
      16             : namespace detail {
      17             : class node;
      18             : }  // namespace detail
      19             : }  // namespace YAML
      20             : 
      21             : namespace YAML {
      22             : namespace detail {
      23             : class YAML_CPP_API memory {
      24             :  public:
      25       10058 :   memory() : m_nodes{} {}
      26             :   node& create_node();
      27             :   void merge(const memory& rhs);
      28             : 
      29             :  private:
      30             :   using Nodes = std::set<shared_node>;
      31             :   Nodes m_nodes;
      32             : };
      33             : 
      34             : class YAML_CPP_API memory_holder {
      35             :  public:
      36       10058 :   memory_holder() : m_pMemory(new memory) {}
      37             : 
      38       18674 :   node& create_node() { return m_pMemory->create_node(); }
      39             :   void merge(memory_holder& rhs);
      40             : 
      41             :  private:
      42             :   shared_memory m_pMemory;
      43             : };
      44             : }  // namespace detail
      45             : }  // namespace YAML
      46             : 
      47             : #endif  // VALUE_DETAIL_MEMORY_H_62B23520_7C8E_11DE_8A39_0800200C9A66

Generated by: LCOV version 1.14