3#include "mc/_HeaderOutputPredefine.h"
5namespace RapidJsonDataFixers::Block {
8MCNAPI
void applyLambdaToComponentInBlockSection(
9 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
11 ::std::string
const& componentName,
12 ::std::function<
void(::rapidjson::GenericMemberIterator<
14 ::rapidjson::UTF8<char>,
15 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>)>
const& callback
18MCNAPI
void applyLambdaToComponentInPermutationsSection(
19 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
21 ::std::string
const& componentName,
22 ::std::function<
void(::rapidjson::GenericMemberIterator<
24 ::rapidjson::UTF8<char>,
25 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>)>
const& callback
28MCNAPI
bool applyLambdaToComponentSections(
29 ::rapidjson::GenericDocument<
30 ::rapidjson::UTF8<char>,
31 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
32 ::rapidjson::CrtAllocator>& document,
34 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
38MCNAPI
void applyLambdaToDescriptionObject(
39 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
42 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
46MCNAPI
void legacyFindIfMissingFieldAndRemoveComponent(
48 GenericMemberIterator<0, ::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>
50 ::std::string
const& componentName,
51 ::std::string
const& fieldName
54MCNAPI
void legacyRemoveComponentIfMissingField(
55 ::rapidjson::GenericDocument<
56 ::rapidjson::UTF8<char>,
57 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
58 ::rapidjson::CrtAllocator>& document,
59 ::std::string
const& componentName,
60 ::std::string
const& fieldName
63MCNAPI
void removeComponent(
64 ::rapidjson::GenericDocument<
65 ::rapidjson::UTF8<char>,
66 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
67 ::rapidjson::CrtAllocator>& document,
68 ::std::string
const& componentName,
69 bool contentErrorOnRemoval,
70 ::std::string
const& errorMessage
73MCNAPI
void removeComponentInPermutationsSection(
74 ::rapidjson::GenericValue<::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
76 ::std::string
const& componentName,
77 bool contentErrorOnRemoval,
78 ::std::string
const& errorMessage
81MCNAPI
void removeDuplicateComponents(
82 ::rapidjson::GenericDocument<
83 ::rapidjson::UTF8<char>,
84 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
85 ::rapidjson::CrtAllocator>& document
88MCNAPI
void removeDuplicateComponentsInComponentsSection(
90 GenericMemberIterator<0, ::rapidjson::UTF8<char>, ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>>&
94MCNAPI
void renameComponent(
95 ::rapidjson::GenericDocument<
96 ::rapidjson::UTF8<char>,
97 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
98 ::rapidjson::CrtAllocator>& document,
99 ::std::string
const& oldComponentName,
100 ::std::string
const& newComponentName