16 enum class ParseAndUpgradeResult :
int {
18 SuccessWithChanges = 1,
19 SuccessWithoutChanges = 2,
42 MCAPI ::CerealDocumentUpgrader::ParseAndUpgradeResult parseJsonAndUpgrade(
43 ::std::string
const& json,
45 ::rapidjson::GenericDocument<
46 ::rapidjson::UTF8<char>,
47 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
48 ::rapidjson::CrtAllocator>& document,
50 bool allowMissingVersionAsZero,
51 ::std::optional<::SemVersion>
const& minVersion,
52 ::std::function<
bool(
::SemVersion const&)>
const& shouldUpgrade
55 MCAPI
void registerUpgrade(::std::shared_ptr<::CerealSchemaUpgrade> upgrade);
57 MCAPI
bool upgradeJson(
60 ::rapidjson::GenericDocument<
61 ::rapidjson::UTF8<char>,
62 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
63 ::rapidjson::CrtAllocator>& document,
65 ::std::optional<::SemVersion>
const& minVersion,
66 ::std::function<
bool(
::SemVersion const&)>
const& shouldUpgrade
75 MCAPI static ::std::string getVersion(::rapidjson::GenericDocument<
76 ::rapidjson::UTF8<char>,
77 ::rapidjson::MemoryPoolAllocator<::rapidjson::CrtAllocator>,
78 ::rapidjson::CrtAllocator>
const& document);