5#include "Containers/Array.h"
6#include "Containers/Set.h"
7#include "Containers/UnrealString.h"
9#include "HAL/PlatformCrt.h"
12#include "Misc/Optional.h"
13#include "Serialization/StructuredArchive.h"
14#include "Templates/UnrealTemplate.h"
15#include "UObject/NameTypes.h"
31 CustomVersion_Automatic_Plus_One,
32 Latest = CustomVersion_Automatic_Plus_One - 1
40
41
101
102
105 friend struct FStaticCustomVersionRegistry;
115
116
117
118
119
123
124
125
126
127
131
132
133
134
135
136
144
145
146
147
148 UE_DEPRECATED(4.24,
"Use one of the thread-safe FCurrentCustomVersions methods instead")
152
153
157
158
201
202
203
204
#define UE_DEPRECATED(Version, Message)
bool(* CustomVersionValidatorFunc)(const FCustomVersion &Version, const FCustomVersionArray &AllVersions, const TCHAR *DebugContext)
TArray< FCustomVersion > FCustomVersionArray
static void Register(const FGuid &Key, int32 Version, const TCHAR *FriendlyName, CustomVersionValidatorFunc ValidatorFunc)
static TOptional< FCustomVersion > Get(const FGuid &Guid)
static void Unregister(const FGuid &Key)
static FCustomVersionContainer GetAll()
static TArray< FCustomVersionDifference > Compare(const FCustomVersionArray &CompareVersions, const TCHAR *DebugContext)
FCustomVersionArray Versions
static const FCustomVersionContainer & GetRegistered()
FString ToString(const FString &Indent) const
const FCustomVersion * GetVersion(FGuid CustomKey) const
const FName GetFriendlyName(FGuid CustomKey) const
FORCEINLINE const FCustomVersionArray & GetAllVersions() const
void Serialize(FStructuredArchive::FSlot Slot, ECustomVersionSerializationFormat::Type Format=ECustomVersionSerializationFormat::Latest)
void Serialize(FArchive &Ar, ECustomVersionSerializationFormat::Type Format=ECustomVersionSerializationFormat::Latest)
void SetVersion(FGuid CustomKey, int32 Version, FName FriendlyName)
~FCustomVersionRegistration()
FCustomVersionRegistration(FGuid InKey, int32 Version, const TCHAR(&InFriendlyName)[N], CustomVersionValidatorFunc InValidatorFunc=nullptr)
ECustomVersionDifference Type
const FCustomVersion * Version
const FName GetFriendlyName() const
FORCEINLINE FCustomVersion()
CustomVersionValidatorFunc Validator
FORCEINLINE bool operator!=(FGuid InKey) const
friend void operator<<(FStructuredArchive::FSlot Slot, FCustomVersion &Version)
FORCEINLINE bool operator==(FGuid InKey) const
FORCEINLINE FCustomVersion(FGuid InKey, int32 InVersion, FName InFriendlyName, CustomVersionValidatorFunc InValidatorFunc=nullptr)
friend bool operator==(const FGuid &X, const FGuid &Y)
friend bool operator!=(const FGuid &X, const FGuid &Y)