LeviLamina
Loading...
Searching...
No Matches
CerealHelpers.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/cereal_helpers/Keyframes.h"
7
8// auto generated forward declare list
9// clang-format off
10class BlockPos;
11namespace CerealHelpers { class FileReferenceLoadContext; }
12namespace CerealHelpers { class FileReferenceLoader; }
13namespace CerealHelpers { struct FileReference; }
14namespace CerealHelpers { struct Member; }
15namespace Core { class Path; }
16namespace Core { class Result; }
17namespace Json { class Value; }
18namespace SharedTypes { struct Color255RGB; }
19namespace SharedTypes { struct Color255RGBA; }
20namespace SharedTypes::v1_21_20 { struct FilterGroupData; }
21namespace SharedTypes::v1_21_20 { struct FilterTestData; }
22namespace cereal { class StrictJsonLoader; }
23namespace cereal { struct ReflectionCtx; }
24// clang-format on
25
26namespace CerealHelpers {
27// functions
28// NOLINTBEGIN
29#ifdef LL_PLAT_C
30MCNAPI bool _beginFromFileReference(
31 ::CerealHelpers::FileReference const& fileReference,
32 ::CerealHelpers::FileReferenceLoadContext const& context,
33 ::std::string& outJsonFileData
34);
35
36MCNAPI ::Core::Result _beginLoadFromJsonFile(
37 ::CerealHelpers::FileReferenceLoader& fileReferenceLoader,
38 ::Core::Path const& path,
39 ::std::string& outJsonFileData
40);
41
42MCNAPI void _endFromFileReference(
43 ::std::optional<::std::vector<::std::string>>&& errors,
44 ::CerealHelpers::FileReferenceLoadContext const& context
45);
46
47MCNAPI ::Core::Result _endLoadFromJsonFile(
48 ::cereal::StrictJsonLoader& jsonLoader,
49 ::CerealHelpers::FileReferenceLoader& fileReferenceLoader,
50 ::Core::Path const& path
51);
52#endif
53
54MCNAPI void bindHelpers(::cereal::ReflectionCtx& ctx);
55
56MCNAPI void bindIntRange(::cereal::ReflectionCtx& ctx);
57
58MCNAPI void bindMceUUID(::cereal::ReflectionCtx& ctx);
59
60MCNAPI ::std::array<int, 3> blockPosAsArray(::BlockPos const& instance);
61
62MCNAPI bool checkBrightnessSchema(
63 ::rapidjson::
64 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value,
65 uchar min,
66 uchar max
67);
68
69MCNAPI bool checkColor255RGBSchema(
70 ::rapidjson::
71 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value
72);
73
74MCNAPI bool checkDefinitionTriggerSchema(
75 ::rapidjson::
76 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value
77);
78
79MCNAPI bool checkEnumSchema(
80 ::rapidjson::
81 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value,
82 ::gsl::span<::std::string const> values
83);
84
85MCNAPI bool checkExpressionNodeSchema(
86 ::rapidjson::
87 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value
88);
89
90MCNAPI bool checkFloatSchema(
91 ::rapidjson::
92 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value,
93 ::std::optional<float> const& min,
94 ::std::optional<float> const& max
95);
96
97MCNAPI bool checkItemDescriptorSchema(
98 ::rapidjson::
99 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value
100);
101
102MCNAPI bool checkMembers(
103 ::rapidjson::
104 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value,
105 ::std::initializer_list<::CerealHelpers::Member> members
106);
107
108MCNAPI bool checkVec3Schema(
109 ::rapidjson::
110 GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>> const& value
111);
112
113MCNAPI void initialize(::cereal::ReflectionCtx& ctx);
114
115MCNAPI ::std::vector<::std::string>
116legacyParseFilterGroupData(::SharedTypes::v1_21_20::FilterGroupData& data, ::Json::Value const& json);
117
118MCNAPI ::std::vector<::std::string>
119legacyParseFilterTestData(::SharedTypes::v1_21_20::FilterTestData& data, ::Json::Value const& json);
120
121#ifdef LL_PLAT_C
122MCNAPI bool
123operator==(::CerealHelpers::Keyframes<float, float> const& __P0, ::CerealHelpers::Keyframes<float, float> const& __P1);
124
125MCNAPI bool operator==(
126 ::CerealHelpers::Keyframes<float, ::SharedTypes::Color255RGB> const& __P0,
127 ::CerealHelpers::Keyframes<float, ::SharedTypes::Color255RGB> const& __P1
128);
129
130MCNAPI bool operator==(
131 ::CerealHelpers::Keyframes<float, ::SharedTypes::Color255RGBA> const& __P0,
132 ::CerealHelpers::Keyframes<float, ::SharedTypes::Color255RGBA> const& __P1
133);
134#endif
135// NOLINTEND
136
137// static variables
138// NOLINTBEGIN
139MCNAPI ::std::add_lvalue_reference_t<char const[]> REGEX_MATERIAL_NAME();
140
141MCNAPI ::std::add_lvalue_reference_t<char const[]> REGEX_NAMESPACE_NAME();
142
143#ifdef LL_PLAT_C
144MCNAPI ::std::add_lvalue_reference_t<char const[]> REGEX_NO_MINECRAFT_NAMESPACE_NAME();
145#endif
146// NOLINTEND
147
148} // namespace CerealHelpers
Definition BlockPos.h:19
Definition FileReferenceLoadContext.h:10
Definition FileReferenceLoader.h:13
Definition Path.h:17
Definition Result.h:11
Definition Value.h:16
Definition StrictJsonLoader.h:10
Definition FileReference.h:12
Definition Member.h:7
Definition Color255RGBA.h:10
Definition Color255RGB.h:15
Definition FilterGroupData.h:16
Definition FilterTestData.h:12
Definition ReflectionCtx.h:11