3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/resources/JsonBetaState.h"
15namespace Json {
class Value; }
16namespace cereal {
struct ReflectionCtx; }
47 MCNAPI ::CerealItemComponentFactory::ComponentMetadata&
50 MCNAPI ::CerealItemComponentFactory::ComponentMetadata&
84 ::std::string
const& componentName,
86 ::std::optional<::SemVersion> releasedMinFormatVersion
89 MCNAPI static ::std::shared_ptr<::ItemComponent>
101 ::std::string componentName,
106 ::JsonBetaState canUseBeta
Definition CerealDocumentUpgrader.h:13
Definition CerealItemComponentFactory.h:19
static MCAPI void addComponentMetadata(::cereal::ReflectionCtx &ctx, ::std::string const &componentName, ::CerealItemComponentFactory::ComponentMetadata &&metadata, ::std::optional<::SemVersion > releasedMinFormatVersion)
static MCAPI void addAllComponentUpgrades(::CerealDocumentUpgrader &documentUpgrader, ::cereal::ReflectionCtx const &ctx)
static MCAPI ::CerealItemComponentFactory * contextInstanceIfAvailable(::cereal::ReflectionCtx const &ctx)
static MCAPI ::std::shared_ptr<::ItemComponent > constructItemComponent(::std::string const &name, ::cereal::ReflectionCtx const &ctx)
static MCAPI bool isComponentBasedItemSchema(::SemVersion const &formatVersion, ::Json::Value const &itemData, ::cereal::ReflectionCtx const &ctx)
static MCAPI bool validateCerealComponent(::std::string componentName, ::SemVersion const &documentVersion, ::IPackLoadContext const &packLoadContext, ::cereal::ReflectionCtx const &ctx, bool forBetaParsing, ::JsonBetaState canUseBeta)
Definition Experiments.h:14
Definition IPackLoadContext.h:20
Definition ItemComponent.h:16
Definition SemVersion.h:15
Definition ReflectionCtx.h:11