Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
Logger.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/cereal/BasicSerializerContext.h"
7#include "mc/deps/cereal/ResultCode.h"
8#include "mc/deps/puv/LoggerIterator.h"
9
10namespace Puv {
11
12class Logger {
13public:
14 // Logger inner types declare
15 // clang-format off
16 struct ParseLogEntry;
17 struct UpgradeLogEntry;
18 struct ValidationLogEntry;
19 // clang-format on
20
21 // Logger inner types define
22 enum class UpgradeResultCode : uchar {
23 // bitfield representation
24 UnsupportedVersion = 1 << 0,
25 SrcError = 1 << 1,
26 DstError = 1 << 2,
27 InternalError = 1 << 3,
28 CopyError = 1 << 4,
29 EnttEnumAsBitmask = 255,
30 All = 255,
31 };
32
33 enum class ValidationResultCode : uchar {
34 Warning = 1,
35 Error = 2,
36 All = 255,
37 EnttEnumAsBitmask = 255,
38 };
39
40 struct ParseLogEntry {
41 public:
42 // member variables
43 // NOLINTBEGIN
44 ::ll::TypedStorage<2, 2, ::cereal::ResultCode> mResultCode;
45 ::ll::TypedStorage<
46 8,
47 24,
48 ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string>>>
49 mContext;
50 ::ll::TypedStorage<8, 32, ::std::string> mMessage;
51 // NOLINTEND
52
53 public:
54 // prevent constructor by default
55 ParseLogEntry& operator=(ParseLogEntry const&);
56 ParseLogEntry();
57
58 public:
59 // member functions
60 // NOLINTBEGIN
62 // NOLINTEND
63
64 public:
65 // constructor thunks
66 // NOLINTBEGIN
67 MCNAPI void* $ctor(::Puv::Logger::ParseLogEntry const&);
68 // NOLINTEND
69 };
70
71 struct UpgradeLogEntry {
72 public:
73 // member variables
74 // NOLINTBEGIN
75 ::ll::TypedStorage<1, 1, ::Puv::Logger::UpgradeResultCode> mResultCode;
76 ::ll::TypedStorage<
77 8,
78 24,
79 ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string>>>
80 mContextSrc;
81 ::ll::TypedStorage<
82 8,
83 24,
84 ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string>>>
85 mContextDst;
86 ::ll::TypedStorage<8, 32, ::std::string> mMessage;
87 // NOLINTEND
88
89 public:
90 // prevent constructor by default
91 UpgradeLogEntry& operator=(UpgradeLogEntry const&);
92 UpgradeLogEntry();
93
94 public:
95 // member functions
96 // NOLINTBEGIN
98 // NOLINTEND
99
100 public:
101 // constructor thunks
102 // NOLINTBEGIN
104 // NOLINTEND
105 };
106
108 public:
109 // member variables
110 // NOLINTBEGIN
111 ::ll::TypedStorage<1, 1, ::Puv::Logger::ValidationResultCode> mResultCode;
112 ::ll::TypedStorage<8, 32, ::std::string> mMessage;
113 // NOLINTEND
114
115 public:
116 // member functions
117 // NOLINTBEGIN
119 // NOLINTEND
120
121 public:
122 // destructor thunk
123 // NOLINTBEGIN
124 MCNAPI void $dtor();
125 // NOLINTEND
126 };
127
128 using Context = ::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string>;
129
130 using ContextType = ::cereal::BasicSerializerContext::ContextType;
131
132 using ParseResultCode = ::cereal::ResultCode;
133
134public:
135 // member variables
136 // NOLINTBEGIN
137 ::ll::TypedStorage<8, 24, ::std::vector<::Puv::Logger::ParseLogEntry>> mParseLog;
138 ::ll::TypedStorage<8, 24, ::std::vector<::Puv::Logger::UpgradeLogEntry>> mUpgradeLog;
139 ::ll::TypedStorage<8, 24, ::std::vector<::Puv::Logger::ValidationLogEntry>> mValidationLog;
140 ::ll::TypedStorage<2, 2, ::cereal::ResultCode> mParseErrorCodes;
141 ::ll::TypedStorage<1, 1, ::Puv::Logger::UpgradeResultCode> mUpgradeErrorCodes;
142 ::ll::TypedStorage<1, 1, ::Puv::Logger::ValidationResultCode> mValidationErrorCodes;
143 ::ll::TypedStorage<1, 1, bool> mHasErrors;
144 // NOLINTEND
145
146public:
147 // prevent constructor by default
148 Logger& operator=(Logger const&);
149 Logger();
150
151public:
152 // member functions
153 // NOLINTBEGIN
154 MCNAPI Logger(::Puv::Logger const&);
155
156 MCNAPI ::Puv::Logger& log(::Puv::Logger::ValidationResultCode res, ::std::string msg);
157
158 MCNAPI ::Puv::Logger&
159 log(::cereal::ResultCode res,
160 ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string>> path,
161 ::std::string msg);
162
163 MCNAPI ::Puv::Logger&
164 log(::Puv::Logger::UpgradeResultCode res,
165 ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string>> src,
166 ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string>> dst,
167 ::std::string msg);
168
169 MCNAPI void merge(::Puv::Logger log);
170
171 MCNAPI ~Logger();
172 // NOLINTEND
173
174public:
175 // static functions
176 // NOLINTBEGIN
177 MCNAPI static ::std::string contextString(
178 ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string>> const& contextStack
179 );
180 // NOLINTEND
181
182public:
183 // constructor thunks
184 // NOLINTBEGIN
185 MCNAPI void* $ctor(::Puv::Logger const&);
186 // NOLINTEND
187
188public:
189 // destructor thunk
190 // NOLINTBEGIN
191 MCNAPI void $dtor();
192 // NOLINTEND
193};
194
195} // namespace Puv
Definition Logger.h:12
MCAPI Logger(::Puv::Logger const &)
MCAPI void * $ctor(::Puv::Logger const &)
MCAPI::Puv::Logger & log(::Puv::Logger::ValidationResultCode res, ::std::string msg)
MCAPI void merge(::Puv::Logger log)
MCAPI ~Logger()
MCAPI::Puv::Logger & log(::cereal::ResultCode res, ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string > > path, ::std::string msg)
static MCAPI ::std::string contextString(::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string > > const &contextStack)
MCAPI::Puv::Logger & log(::Puv::Logger::UpgradeResultCode res, ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string > > src, ::std::vector<::std::pair<::cereal::BasicSerializerContext::ContextType, ::std::string > > dst, ::std::string msg)
MCAPI void $dtor()
Definition Logger.h:40
MCAPI ParseLogEntry(::Puv::Logger::ParseLogEntry const &)
MCAPI void * $ctor(::Puv::Logger::ParseLogEntry const &)
Definition Logger.h:71
MCAPI UpgradeLogEntry(::Puv::Logger::UpgradeLogEntry const &)
MCAPI void * $ctor(::Puv::Logger::UpgradeLogEntry const &)
Definition Logger.h:107