tetengo 1.8.2
A multipurpose library set
Loading...
Searching...
No Matches
memory_storage.hpp
Go to the documentation of this file.
1
7#if !defined(TETENGO_PROPERTY_MEMORYSTORAGE_HPP)
8#define TETENGO_PROPERTY_MEMORYSTORAGE_HPP
9
10#include <filesystem>
11#include <memory>
12
14
15
16namespace tetengo::property
17{
21 class memory_storage : public storage
22 {
23 public:
24 // constructors and destructor
25
29 virtual ~memory_storage();
30
31
32 private:
33 // types
34
35 class impl;
36
37 friend class memory_storage_loader;
38
39
40 // variables
41
42 const std::unique_ptr<impl> m_p_impl;
43
44
45 // constructors
46
47 explicit memory_storage(value_map_type& master_value_map);
48
49
50 // virtual functions
51
52 virtual void save_impl() const override;
53 };
54
55
60 {
61 public:
62 // constructors and destructor
63
68
73
74
75 private:
76 // types
77
78 class impl;
79
80
81 // variables
82
83 const std::unique_ptr<impl> m_p_impl;
84
85
86 // virtual functions
87
88 virtual std::unique_ptr<storage> load_impl(const std::filesystem::path&) const override;
89 };
90
91
92}
93
94
95#endif
A memory storage loader.
Definition memory_storage.hpp:60
virtual ~memory_storage_loader()
Destroys the memory storage loader.
memory_storage_loader()
Creates a memory storage loader.
A memory storage.
Definition memory_storage.hpp:22
virtual ~memory_storage()
Destroys the memory storage.
A storage loader.
Definition storage.hpp:156
A storage.
Definition storage.hpp:27
std::unordered_map< std::string, std::variant< bool, std::uint32_t, std::string > > value_map_type
The value map type.
Definition storage.hpp:32
A property set library.
A storage.