LeviLamina
Loading...
Searching...
No Matches
RapidJSONSchemaReader.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/cereal/schema/SchemaRWType.h"
7#include "mc/deps/cereal/schema/SchemaReader.h"
8#include "mc/platform/Result.h"
9
10namespace cereal {
11
12class RapidJSONSchemaReader : public ::cereal::SchemaReader {
13public:
14 // RapidJSONSchemaReader inner types declare
15 // clang-format off
16 struct State;
17 // clang-format on
18
19 // RapidJSONSchemaReader inner types define
20 struct State {
21 public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<
25 8,
26 8,
27 ::rapidjson::GenericValue<
28 ::rapidjson::UTF8<char>,
29 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const*>
30 mValue;
31 ::ll::TypedStorage<
32 8,
33 8,
34 ::rapidjson::GenericMemberIterator<
35 1,
36 ::rapidjson::UTF8<char>,
37 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>>
38 mIt;
39 // NOLINTEND
40 };
41
42public:
43 // member variables
44 // NOLINTBEGIN
45 ::ll::TypedStorage<8, 24, ::std::vector<::cereal::RapidJSONSchemaReader::State>> mState;
46 ::ll::TypedStorage<
47 8,
48 96,
49 ::rapidjson::GenericDocument<
50 ::rapidjson::UTF8<char>,
51 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
52 ::rapidjson::CrtAllocator>>
53 mDoc;
54 // NOLINTEND
55
56public:
57 // prevent constructor by default
58 RapidJSONSchemaReader();
59
60public:
61 // virtual functions
62 // NOLINTBEGIN
63 virtual bool isValid() const /*override*/;
64
65 virtual ::cereal::SchemaRWType expectedType() const /*override*/;
66
67 virtual ::Bedrock::Result<void> asNull() /*override*/;
68
69 virtual ::Bedrock::Result<bool> asBool() /*override*/;
70
71 virtual ::Bedrock::Result<schar> asInt8() /*override*/;
72
73 virtual ::Bedrock::Result<uchar> asUInt8() /*override*/;
74
75 virtual ::Bedrock::Result<short> asInt16() /*override*/;
76
77 virtual ::Bedrock::Result<ushort> asUInt16() /*override*/;
78
79 virtual ::Bedrock::Result<int> asInt32() /*override*/;
80
81 virtual ::Bedrock::Result<uint> asUInt32() /*override*/;
82
83 virtual ::Bedrock::Result<int64> asInt64() /*override*/;
84
85 virtual ::Bedrock::Result<uint64> asUInt64() /*override*/;
86
87 virtual ::Bedrock::Result<float> asFloat() /*override*/;
88
89 virtual ::Bedrock::Result<double> asDouble() /*override*/;
90
91 virtual ::Bedrock::Result<::std::string> asString(uint64 maxInputLength) /*override*/;
92
93 virtual ::Bedrock::Result<void>
94 asRawBytes(::std::function<::gsl::span<uchar>(uint64)> storage, uint64 maxInputLength) /*override*/;
95
96 virtual ::std::optional<bool> additionalDataAsBool() /*override*/;
97
98 virtual ::std::optional<uint> additionalDataAsUInt32() /*override*/;
99
100 virtual ::std::optional<::std::string> additionalDataAsString(uint64) /*override*/;
101
102 virtual uint64 members() /*override*/;
103
104 virtual uint64 length(uint64) /*override*/;
105
106 virtual bool pushMember(::std::string_view const name) /*override*/;
107
108 virtual ::std::string_view pushNextMember() /*override*/;
109
110 virtual void pushElement(uint64 index) /*override*/;
111
112 virtual void pop() /*override*/;
113 // NOLINTEND
114
115public:
116 // member functions
117 // NOLINTBEGIN
118 MCAPI explicit RapidJSONSchemaReader(::std::string const& data);
119
120 MCAPI explicit RapidJSONSchemaReader(
121 ::rapidjson::GenericValue<
122 ::rapidjson::UTF8<char>,
123 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value
124 );
125 // NOLINTEND
126
127public:
128 // constructor thunks
129 // NOLINTBEGIN
130 MCAPI void* $ctor(::std::string const& data);
131
132 MCAPI void* $ctor(
133 ::rapidjson::GenericValue<
134 ::rapidjson::UTF8<char>,
135 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value
136 );
137 // NOLINTEND
138
139public:
140 // virtual function thunks
141 // NOLINTBEGIN
142 MCFOLD bool $isValid() const;
143
144 MCFOLD ::cereal::SchemaRWType $expectedType() const;
145
146 MCAPI ::Bedrock::Result<void> $asNull();
147
148 MCAPI ::Bedrock::Result<bool> $asBool();
149
150 MCAPI ::Bedrock::Result<schar> $asInt8();
151
152 MCAPI ::Bedrock::Result<uchar> $asUInt8();
153
154 MCAPI ::Bedrock::Result<short> $asInt16();
155
156 MCAPI ::Bedrock::Result<ushort> $asUInt16();
157
158 MCAPI ::Bedrock::Result<int> $asInt32();
159
160 MCAPI ::Bedrock::Result<uint> $asUInt32();
161
162 MCAPI ::Bedrock::Result<int64> $asInt64();
163
164 MCAPI ::Bedrock::Result<uint64> $asUInt64();
165
166 MCAPI ::Bedrock::Result<float> $asFloat();
167
168 MCAPI ::Bedrock::Result<double> $asDouble();
169
170 MCAPI ::Bedrock::Result<::std::string> $asString(uint64 maxInputLength);
171
172 MCAPI ::Bedrock::Result<void>
173 $asRawBytes(::std::function<::gsl::span<uchar>(uint64)> storage, uint64 maxInputLength);
174
175 MCFOLD ::std::optional<bool> $additionalDataAsBool();
176
177 MCFOLD ::std::optional<uint> $additionalDataAsUInt32();
178
179 MCFOLD ::std::optional<::std::string> $additionalDataAsString(uint64);
180
181 MCFOLD uint64 $members();
182
183 MCFOLD uint64 $length(uint64);
184
185 MCFOLD bool $pushMember(::std::string_view const name);
186
187 MCFOLD ::std::string_view $pushNextMember();
188
189 MCFOLD void $pushElement(uint64 index);
190
191 MCFOLD void $pop();
192
193
194 // NOLINTEND
195
196public:
197 // vftables
198 // NOLINTBEGIN
199 MCNAPI static void** $vftable();
200 // NOLINTEND
201};
202
203} // namespace cereal
static MCAPI void ** $vftable()
STL namespace.
Definition RapidJSONSchemaReader.h:20
Definition SchemaReader.h:12