Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
Block.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5namespace RapidJsonDataFixers::Block {
6// functions
7// NOLINTBEGIN
8MCNAPI void applyLambdaToComponentInBlockSection(
9 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
10 parent,
11 ::std::string const& componentName,
12 ::std::function<void(::rapidjson::GenericMemberIterator<
13 0,
14 ::rapidjson::UTF8<char>,
15 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>)> const& callback
16);
17
18MCNAPI bool applyLambdaToComponentSections(
19 ::rapidjson::GenericDocument<
20 ::rapidjson::UTF8<char>,
21 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
22 ::rapidjson::CrtAllocator>& document,
23 ::std::function<void(
24 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
25 )> const& callback
26);
27
28MCNAPI void applyLambdaToDescriptionObject(
29 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
30 parent,
31 ::std::function<void(
32 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
33 )> const& callback
34);
35
36MCNAPI void legacyFindIfMissingFieldAndRemoveComponent(
37 ::rapidjson::
38 GenericMemberIterator<0, ::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>
39 componentsIte,
40 ::std::string const& componentName,
41 ::std::string const& fieldName
42);
43
44MCNAPI void legacyRemoveComponentIfMissingField(
45 ::rapidjson::GenericDocument<
46 ::rapidjson::UTF8<char>,
47 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
48 ::rapidjson::CrtAllocator>& document,
49 ::std::string const& componentName,
50 ::std::string const& fieldName
51);
52
53MCNAPI void removeComponent(
54 ::rapidjson::GenericDocument<
55 ::rapidjson::UTF8<char>,
56 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
57 ::rapidjson::CrtAllocator>& document,
58 ::std::string const& componentName,
59 bool contentErrorOnRemoval,
60 ::std::string const& errorMessage
61);
62
63MCNAPI void removeComponentField(
64 ::rapidjson::GenericDocument<
65 ::rapidjson::UTF8<char>,
66 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
67 ::rapidjson::CrtAllocator>& document,
68 ::std::string const& componentName,
69 ::std::string const& fieldName
70);
71
72MCNAPI void removeDuplicateComponents(
73 ::rapidjson::GenericDocument<
74 ::rapidjson::UTF8<char>,
75 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
76 ::rapidjson::CrtAllocator>& document
77);
78
79MCNAPI void removeDuplicateComponentsInComponentsSection(
80 ::rapidjson::
81 GenericMemberIterator<0, ::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
82 componentsListIter
83);
84
85MCNAPI void renameComponent(
86 ::rapidjson::GenericDocument<
87 ::rapidjson::UTF8<char>,
88 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
89 ::rapidjson::CrtAllocator>& document,
90 ::std::string const& oldComponentName,
91 ::std::string const& newComponentName
92);
93
94MCNAPI void renameComponentField(
95 ::rapidjson::GenericDocument<
96 ::rapidjson::UTF8<char>,
97 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
98 ::rapidjson::CrtAllocator>& document,
99 ::std::string const& componentName,
100 ::std::string const& oldFieldName,
101 ::std::string const& newFieldName
102);
103
104MCNAPI void replaceComponentObjectWithFieldValue(
105 ::rapidjson::GenericDocument<
106 ::rapidjson::UTF8<char>,
107 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
108 ::rapidjson::CrtAllocator>& document,
109 ::std::string const& componentName,
110 ::std::string const& fieldName
111);
112// NOLINTEND
113
114} // namespace RapidJsonDataFixers::Block