4#include "CoreMinimal.h"
5#include "UObject/UnrealType.h"
36 virtual void Write(
const UStruct* StructDefinition,
const void*
Object) = 0;
49 if (Property->HasMetaData(TEXT(
"DlgNoExport")))
54 if (Property->HasAnyPropertyFlags(SkipFlags))
66 return Property && Property->HasMetaData(TEXT(
"DlgLinePerItem"));
76 return Property && Property->HasMetaData(TEXT(
"DlgWriteIndex"));
94 if (!IsValid(
Object->GetOuter()) ||
Object->GetOuter()->IsA<UPackage>())
101 return Property && Property->HasMetaData(TEXT(
"DlgSaveOnlyReference"));
113 static constexpr int64 SkipFlags = CPF_Deprecated | CPF_Transient;
116 bool bLogVerbose =
false;
UClassProperty FNYClassProperty
virtual bool CanSaveAsReference(const FNYProperty *Property, const UObject *Object)
virtual const FString & GetAsString() const =0
virtual void Write(const UStruct *StructDefinition, const void *Object)=0
virtual bool ExportToFile(const FString &FileName)=0
static bool CanWriteOneLinePerItem(const FNYProperty *Property)
static bool CanSkipProperty(const FNYProperty *Property)
bool IsLogVerbose() const
void SetLogVerbose(bool bValue)
static bool CanWriteIndex(const FNYProperty *Property)