Files
UnrealEngineUWP/Engine/Source/Programs/UnrealHeaderTool/Resources/UHTDebugging/TestObjectSerializers.h
robert manuszewski be36beb7e4 Copying //UE4/Dev-Core [at] 4771952 to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 4772220 in //UE4/Main/...
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4782699 by robert manuszewski in Dev-Networking branch]
2019-01-23 09:49:18 -05:00

116 lines
2.3 KiB
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "EnumOnlyHeader.h"
#include "TestObjectSerializers.generated.h"
UCLASS()
class UTestObject_NoSerializers : public UObject
{
GENERATED_UCLASS_BODY()
};
UCLASS()
class UTestObject_FArchive : public UObject
{
GENERATED_UCLASS_BODY()
virtual void Serialize(FArchive& Ar) override;
};
UCLASS()
class UTestObject_FStructuredArchive : public UObject
{
GENERATED_UCLASS_BODY()
virtual void Serialize(FStructuredArchive::FSlot Slot) override;
};
UCLASS()
class UTestObject_BothArchives : public UObject
{
GENERATED_UCLASS_BODY()
virtual void Serialize(FArchive& Ar) override;
virtual void Serialize(FStructuredArchive::FSlot Slot) override;
};
UCLASS()
class UTestObject_ArchiveInEditorOnlyDataDefine : public UObject
{
GENERATED_UCLASS_BODY()
#if WITH_EDITORONLY_DATA
virtual void Serialize(FArchive& Ar) override;
#endif
};
#if 0
// Should fail - no Serialize functions inside WITH_EDITOR
UCLASS()
class UTestObject_ArchiveInWithEditor : public UObject
{
GENERATED_UCLASS_BODY()
#if WITH_EDITOR
virtual void Serialize(FArchive& Ar) override;
#endif
};
#endif
#if 0
// Should fail - no Serialize functions inside WITH_EDITOR
UCLASS()
class UTestObject_StructuredArchiveInWithEditor : public UObject
{
GENERATED_UCLASS_BODY()
#if WITH_EDITOR
virtual void Serialize(FStructuredArchive::FSlot Slot) override;
#endif
};
#endif
#if 0
#define SOME_RANDOM_DEFINE 1
// Should fail - no Serialize functions inside arbitrary preprocessor blocks
UCLASS()
class UTestObject_ArchiveInPreprocessorBlock : public UObject
{
GENERATED_UCLASS_BODY()
#if SOME_RANDOM_DEFINE
void Serialize(FArchive& Ar) override;
#endif
};
#undef SOME_RANDOM_DEFINE
#endif
#if 0
#define SOME_RANDOM_DEFINE 1
// Should fail - no Serialize functions inside arbitrary preprocessor blocks
UCLASS()
class UTestObject_StructuredArchiveInPreprocessorBlock : public UObject
{
GENERATED_UCLASS_BODY()
#if SOME_RANDOM_DEFINE
void Serialize(FStructuredArchive::FSlot Slot) override;
#endif
};
#undef SOME_RANDOM_DEFINE
#endif
#if 0
#define SOME_RANDOM_DEFINE 1
// Should fail - no uproperties inside arbitrary preprocessor blocks
UCLASS()
class UTestObject_UPropertyInPreprocessorBlock : public UObject
{
GENERATED_UCLASS_BODY()
#if SOME_RANDOM_DEFINE
UPROPERTY()
uint32 TestProperty;
#endif
};
#undef SOME_RANDOM_DEFINE
#endif