LeviLamina
Loading...
Searching...
No Matches
JsonUtil.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/debug/log/LogArea.h"
7#include "mc/world/item/ItemColor.h"
8#include "mc/world/level/block/BannerBlockType.h"
9
10// auto generated forward declare list
11// clang-format off
12class HashedString;
13class SemVersion;
14class Vec2;
15class Vec3;
16namespace Json { class Value; }
17// clang-format on
18
19namespace JsonUtil {
20// functions
21// NOLINTBEGIN
22MCNAPI void LogMissingChildSchemaOption(
23 ::LogArea area,
24 ::Json::Value const& node,
25 ::std::string const& missingName,
26 ::std::string const& foundNodesStr,
27 ::std::string const& optionsStr
28);
29
30MCNAPI void
31LogUnknownChildSchemaOption(::std::string const& childName, ::LogArea area, ::Json::Value const& childValue);
32
33MCNAPI void eraseSchema(::HashedString const& name, ::SemVersion const& version);
34
35MCNAPI ::Json::Value& getMemberByCaseInsensitiveName(::Json::Value& node, ::std::string_view memberName);
36
37MCNAPI ::Json::Value const&
38getMemberByCaseInsensitiveNameConst(::Json::Value const& node, ::std::string_view memberName);
39
40MCNAPI bool parseBannerBlockType(::BannerBlockType& outType, ::Json::Value const& root);
41
42MCNAPI bool
43parseItem(::std::string& outItemName, ::std::string& outItemNamespace, int& inoutItemAux, ::std::string_view inString);
44
45MCNAPI bool parseItemColor(::ItemColor& outColor, ::Json::Value const& root);
46
47MCNAPI bool parseRange(::Json::Value const& root, int& outMin, int& outMax);
48
49MCNAPI bool parseVec2(::Vec2& outVec, ::Json::Value const& root);
50
51MCNAPI bool parseVec3(::Vec3& outVec, ::Json::Value const& root);
52
53MCNAPI void setDefaultPrettyName(::std::string& destPrettyName, ::HashedString const& sourceName);
54
55MCNAPI void unregisterSchema(::HashedString const& name, ::SemVersion const& version);
56// NOLINTEND
57
58// static variables
59// NOLINTBEGIN
60MCNAPI ::HashedString const& ACTOR_DEFINITION_TRIGGER_TYPE_NAME();
61
62MCNAPI ::HashedString const& ACTOR_FILTER_GROUP_TYPE_NAME();
63
64MCNAPI ::HashedString const& ARRAY_TYPE_NAME();
65
66MCNAPI ::HashedString const& BOOL_TYPE_NAME();
67
68MCNAPI ::HashedString const& ENTITIES_TYPE_NAME();
69
70MCNAPI ::HashedString const& ENUM_TYPE_NAME();
71
72MCNAPI ::HashedString const& FLOAT_RANGE_TYPE_NAME();
73
74MCNAPI ::HashedString const& FLOAT_TYPE_NAME();
75
76MCNAPI ::HashedString const& INT_RANGE_TYPE_NAME();
77
78MCNAPI ::HashedString const& INT_TYPE_NAME();
79
80MCNAPI ::HashedString const& MOLANG_TYPE_NAME();
81
82MCNAPI ::HashedString const& OBJECT_TYPE_NAME();
83
84MCNAPI ::HashedString const& STRING_TYPE_NAME();
85
86MCNAPI ::HashedString const& VEC2_TYPE_NAME();
87
88MCNAPI ::HashedString const& VEC3_TYPE_NAME();
89
90MCNAPI ::HashedString const& VEC4_TYPE_NAME();
91
92MCNAPI ::HashedString const& VERSION_TYPE_NAME();
93// NOLINTEND
94
95} // namespace JsonUtil
Definition HashedString.h:5
Definition Value.h:16
Definition SemVersion.h:15
Definition Vec2.h:5
Definition Vec3.h:10