UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FieldNotificationVariant.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "UObject/Class.h"
7#include "UObject/Field.h"
9
11{
12
14{
15public:
16 FFieldVariant() = default;
17
20 {
21 }
22
25 {
26 }
27
28public:
29 using ::FFieldVariant::IsValid;
30 using ::FFieldVariant::GetOwnerClass;
31 using ::FFieldVariant::GetFName;
32 using ::FFieldVariant::operator bool;
33 using ::FFieldVariant::operator ==;
34 using ::FFieldVariant::operator !=;
35#if WITH_METADATA
36 using ::FFieldVariant::HasMetaData;
37#endif // WITH_METADATA
38
39 inline bool IsProperty() const
40 {
41 return IsValid() && !IsUObject();
42 }
43
44 inline bool IsFunction() const
45 {
46 return IsValid() && IsUObject();
47 }
48
50 {
51 return IsProperty() ? static_cast<FProperty*>(ToFieldUnsafe()) : nullptr;
52 }
53
54 inline const FProperty* GetProperty() const
55 {
56 return IsProperty() ? static_cast<const FProperty*>(ToFieldUnsafe()) : nullptr;
57 }
58
60 {
61 return IsFunction() ? static_cast<UFunction*>(ToUObjectUnsafe()) : nullptr;
62 }
63
64 inline const UFunction* GetFunction() const
65 {
66 return IsFunction() ? static_cast<const UFunction*>(ToUObjectUnsafe()) : nullptr;
67 }
68};
69
70} //namespace
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const bool
Definition NetworkReplayStreaming.h:178
Definition Field.h:353
bool IsUObject() const
Definition Field.h:442
bool IsValid() const
Definition Field.h:446
UE_FORCEINLINE_HINT FField * ToFieldUnsafe() const
Definition Field.h:505
UE_FORCEINLINE_HINT UObject * ToUObjectUnsafe() const
Definition Field.h:510
Definition UnrealType.h:174
Definition Class.h:2476
Definition FieldNotificationLibrary.cpp:16
Definition FieldNotificationVariant.h:14
FFieldVariant(const UFunction *InFunction)
Definition FieldNotificationVariant.h:23
bool IsProperty() const
Definition FieldNotificationVariant.h:39
const FProperty * GetProperty() const
Definition FieldNotificationVariant.h:54
UFunction * GetFunction()
Definition FieldNotificationVariant.h:59
const UFunction * GetFunction() const
Definition FieldNotificationVariant.h:64
FFieldVariant(const FProperty *InProperty)
Definition FieldNotificationVariant.h:18
bool IsFunction() const
Definition FieldNotificationVariant.h:44
FProperty * GetProperty()
Definition FieldNotificationVariant.h:49