LeviLamina
Loading...
Searching...
No Matches
DataStore.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
7#include "mc/platform/brstd/copyable_function.h"
8#include "mc/platform/threading/LockGuard.h"
9#include "mc/platform/threading/SharedLock.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace Bedrock::JSONObject { class Node; }
14namespace Bedrock::JSONObject { class ValueWrapper; }
15namespace Bedrock::Threading { class SharedRecursiveMutex; }
16namespace Core { class Path; }
17// clang-format on
18
19namespace Bedrock {
20
22public:
23 // DataStore inner types declare
24 // clang-format off
25 template<typename T0, typename T1> class AccessHandle;
26 struct CustomFileHandlers;
27 class Editor;
28 class Impl;
29 class Viewer;
30 // clang-format on
31
32 // DataStore inner types define
33 class Impl {
34 public:
35 // member variables
36 // NOLINTBEGIN
46 // NOLINTEND
47
48 public:
49 // prevent constructor by default
50 Impl& operator=(Impl const&);
51 Impl(Impl const&);
52 Impl();
53
54 public:
55 // member functions
56 // NOLINTBEGIN
57 MCNAPI explicit Impl(::Bedrock::DataStore* owner);
58
59 MCNAPI ::Bedrock::JSONObject::Node*
60 _setValueForKey(char const* key, uint64 keyLength, ::Bedrock::JSONObject::ValueWrapper const& value);
61
62 MCNAPI void load();
63
65
66 MCNAPI ~Impl();
67 // NOLINTEND
68
69 public:
70 // constructor thunks
71 // NOLINTBEGIN
72 MCNAPI void* $ctor(::Bedrock::DataStore* owner);
73 // NOLINTEND
74
75 public:
76 // destructor thunk
77 // NOLINTBEGIN
78 MCNAPI void $dtor();
79 // NOLINTEND
80 };
81
82 class Viewer {
83 public:
84 // virtual functions
85 // NOLINTBEGIN
86 // vIndex: 0
87 virtual ~Viewer() = default;
88
89 // vIndex: 2
90 virtual ::gsl::not_null<::Bedrock::DataStore const*> getOwningDataStore() const = 0;
91
92 // vIndex: 1
93 virtual ::gsl::not_null<::Bedrock::DataStore*> getOwningDataStore() = 0;
94
95 // vIndex: 3
96 virtual ::Bedrock::JSONObject::Node const* getValueForKey(::std::string_view) const = 0;
97 // NOLINTEND
98
99 public:
100 // virtual function thunks
101 // NOLINTBEGIN
102
103 // NOLINTEND
104
105 public:
106 // vftables
107 // NOLINTBEGIN
108 MCNAPI static void** $vftable();
109 // NOLINTEND
110 };
111
113 public:
114 // virtual functions
115 // NOLINTBEGIN
116 // vIndex: 4
117 virtual ::Bedrock::JSONObject::Node* getValueForKey(::std::string_view) = 0;
118
119 // vIndex: 5
120 virtual ::Bedrock::JSONObject::Node*
121 setValueForKey(::std::string_view, ::Bedrock::JSONObject::ValueWrapper const&) = 0;
122
123 // vIndex: 0
124 virtual ~Editor() /*override*/ = default;
125 // NOLINTEND
126
127 public:
128 // virtual function thunks
129 // NOLINTBEGIN
130
131 // NOLINTEND
132 };
133
135 public:
136 // member variables
137 // NOLINTBEGIN
141 // NOLINTEND
142
143 public:
144 // prevent constructor by default
145 CustomFileHandlers& operator=(CustomFileHandlers const&);
148
149 public:
150 // member functions
151 // NOLINTBEGIN
153 // NOLINTEND
154
155 public:
156 // destructor thunk
157 // NOLINTBEGIN
158 MCNAPI void $dtor();
159 // NOLINTEND
160 };
161
162 template <typename T0, typename T1>
163 class AccessHandle {};
164
165public:
166 // member variables
167 // NOLINTBEGIN
169 // NOLINTEND
170
171public:
172 // prevent constructor by default
173 DataStore& operator=(DataStore const&);
174 DataStore(DataStore const&);
175
176public:
177 // virtual functions
178 // NOLINTBEGIN
179 // vIndex: 0
180 virtual ~DataStore() /*override*/;
181 // NOLINTEND
182
183public:
184 // member functions
185 // NOLINTBEGIN
186 MCNAPI DataStore();
187
189 // NOLINTEND
190
191public:
192 // constructor thunks
193 // NOLINTBEGIN
194 MCNAPI void* $ctor();
195 // NOLINTEND
196
197public:
198 // destructor thunk
199 // NOLINTBEGIN
200 MCNAPI void $dtor();
201 // NOLINTEND
202
203public:
204 // vftables
205 // NOLINTBEGIN
206 MCNAPI static void** $vftable();
207 // NOLINTEND
208};
209
210} // namespace Bedrock
Definition DataStore.h:163
Definition DataStore.h:112
Definition DataStore.h:33
MCAPI void setCustomFileHandlers(::Bedrock::DataStore::CustomFileHandlers handlers)
MCAPI Impl(::Bedrock::DataStore *owner)
MCAPI::Bedrock::JSONObject::Node * _setValueForKey(char const *key, uint64 keyLength, ::Bedrock::JSONObject::ValueWrapper const &value)
MCAPI void * $ctor(::Bedrock::DataStore *owner)
Definition DataStore.h:82
static MCAPI void ** $vftable()
Definition DataStore.h:21
static MCAPI void ** $vftable()
MCAPI void setCustomFileHandlers(::Bedrock::DataStore::CustomFileHandlers handlers)
MCAPI void * $ctor()
MCAPI void $dtor()
Definition EnableNonOwnerReferences.h:7
Definition ValueWrapper.h:7
Definition Path.h:16
Definition DataStore.h:134
Definition Alias.h:14