17template <
typename T,
typename Enable =
void>
57template <
typename T, ESPMode Mode>
122 static_assert(
TIsValidListItem<T>::Value,
"Item type T must be a UObjectBase pointer, TFieldPath, TSharedRef, TSharedPtr or FName.");
148 return InPtr.IsValid();
171 class SerializerType{};
194 return InPtr.IsValid();
217 class SerializerType{};
240 return InPtr.IsValid();
255 return InPtr.ToSharedRef();
263 class SerializerType{};
286 return InPtr.IsValid();
301 return InPtr.ToSharedRef();
309 class SerializerType{};
331 return InPtr.Pin().IsValid();
354 class SerializerType{};
377 return InPtr.Pin().IsValid();
400 class SerializerType{};
425 return InPtr.IsValid();
445 T* ObjPtr =
InPtr.Get();
449 class SerializerType{};
472 Collector.AddReferencedObjects(ItemsWithGeneratedWidgets);
478 Collector.AddReferencedObject(It.Value);
482 Collector.AddReferencedObjects(SelectedItems);
487 return InPtr !=
nullptr;
536 Collector.AddReferencedObjects(ItemsWithGeneratedWidgets);
542 Collector.AddReferencedObject(It.Value);
546 Collector.AddReferencedObjects(SelectedItems);
582 Collector.AddReferencedObjects(ItemsWithGeneratedWidgets);
588 Collector.AddReferencedObject(It.Value);
592 Collector.AddReferencedObjects(SelectedItems);
634 Item->AddReferencedObjects(Collector);
642 if (It.Value !=
nullptr)
644 It.Value->AddReferencedObjects(Collector);
653 Item->AddReferencedObjects(Collector);
660 return !!
InPtr.Get();
680 T* ObjPtr =
InPtr.Get();
684 class SerializerType {};
733 class SerializerType {};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
ESPMode
Definition SharedPointerFwd.h:12
Definition GCObject.h:128
Definition NameTypes.h:617
Definition UObjectGlobals.h:2492
Definition ITableRow.h:15
Definition UnrealString.h.inl:34
Definition SharedPointer.h:692
Definition SharedPointer.h:153
Definition SharedPointer.h:1295
Definition SetUtilities.h:36
Definition STreeView.h:22
Definition FieldPath.h:283
Definition TableViewTypeTraits.h:19
@ Value
Definition TableViewTypeTraits.h:22
static FName NullableItemTypeConvertToItemType(const FName &InValue)
Definition TableViewTypeTraits.h:723
FName NullableType
Definition TableViewTypeTraits.h:694
static FName MakeNullPtr()
Definition TableViewTypeTraits.h:718
static void AddReferencedObjects(FReferenceCollector &Collector, TArray< FName > &ItemsWithGeneratedWidgets, TSet< FName > &SelectedItems, TMap< const U *, FName > &WidgetToItemMap)
Definition TableViewTypeTraits.h:701
static void ResetPtr(FName &InValue)
Definition TableViewTypeTraits.h:713
static FString DebugDump(FName InValue)
Definition TableViewTypeTraits.h:728
static bool IsPtrValid(const FName &InValue)
Definition TableViewTypeTraits.h:708
TFieldPath< T > NullableType
Definition TableViewTypeTraits.h:618
static bool IsPtrValid(const TFieldPath< T > &InPtr)
Definition TableViewTypeTraits.h:658
static TFieldPath< T > NullableItemTypeConvertToItemType(const TFieldPath< T > &InPtr)
Definition TableViewTypeTraits.h:673
static FString DebugDump(TFieldPath< T > InPtr)
Definition TableViewTypeTraits.h:678
static void ResetPtr(TFieldPath< T > &InPtr)
Definition TableViewTypeTraits.h:663
static TFieldPath< T > MakeNullPtr()
Definition TableViewTypeTraits.h:668
static void AddReferencedObjects(FReferenceCollector &Collector, TArray< TFieldPath< T > > &ItemsWithGeneratedWidgets, TSet< TFieldPath< T > > &SelectedItems, TMap< const U *, TFieldPath< T > > &WidgetToItemMap)
Definition TableViewTypeTraits.h:625
static FString DebugDump(TObjectPtr< T > InPtr)
Definition TableViewTypeTraits.h:505
static void ResetPtr(TObjectPtr< T > &InPtr)
Definition TableViewTypeTraits.h:490
TObjectPtr< T > NullableType
Definition TableViewTypeTraits.h:459
static TObjectPtr< T > MakeNullPtr()
Definition TableViewTypeTraits.h:495
static bool IsPtrValid(const TObjectPtr< T > &InPtr)
Definition TableViewTypeTraits.h:485
static TObjectPtr< T > NullableItemTypeConvertToItemType(const TObjectPtr< T > &InPtr)
Definition TableViewTypeTraits.h:500
FGCObject SerializerType
Definition TableViewTypeTraits.h:510
static void AddReferencedObjects(FReferenceCollector &Collector, TArray< TObjectPtr< T > > &ItemsWithGeneratedWidgets, TSet< TObjectPtr< T > > &SelectedItems, TMap< const U *, TObjectPtr< T > > &WidgetToItemMap)
Definition TableViewTypeTraits.h:466
static bool IsPtrValid(const TSharedPtr< T > &InPtr)
Definition TableViewTypeTraits.h:146
static void AddReferencedObjects(FReferenceCollector &, TArray< TSharedPtr< T > > &, TSet< TSharedPtr< T > > &, TMap< const U *, TSharedPtr< T > > &)
Definition TableViewTypeTraits.h:139
static FString DebugDump(TSharedPtr< T > InPtr)
Definition TableViewTypeTraits.h:166
static TSharedPtr< T > NullableItemTypeConvertToItemType(const TSharedPtr< T > &InPtr)
Definition TableViewTypeTraits.h:161
static TSharedPtr< T > MakeNullPtr()
Definition TableViewTypeTraits.h:156
TSharedPtr< T > NullableType
Definition TableViewTypeTraits.h:132
static void ResetPtr(TSharedPtr< T > &InPtr)
Definition TableViewTypeTraits.h:151
static TSharedPtr< T, ESPMode::ThreadSafe > NullableItemTypeConvertToItemType(const TSharedPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:207
static FString DebugDump(TSharedPtr< T, ESPMode::ThreadSafe > InPtr)
Definition TableViewTypeTraits.h:212
static void ResetPtr(TSharedPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:197
static bool IsPtrValid(const TSharedPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:192
static TSharedPtr< T, ESPMode::ThreadSafe > MakeNullPtr()
Definition TableViewTypeTraits.h:202
static void AddReferencedObjects(FReferenceCollector &, TArray< TSharedPtr< T, ESPMode::ThreadSafe > > &, TSet< TSharedPtr< T, ESPMode::ThreadSafe > > &, TMap< const U *, TSharedPtr< T, ESPMode::ThreadSafe > > &WidgetToItemMap)
Definition TableViewTypeTraits.h:185
TSharedPtr< T, ESPMode::ThreadSafe > NullableType
Definition TableViewTypeTraits.h:178
TSharedPtr< T > NullableType
Definition TableViewTypeTraits.h:224
static void AddReferencedObjects(FReferenceCollector &, TArray< TSharedRef< T > > &, TSet< TSharedRef< T > > &, TMap< const U *, TSharedRef< T > > &)
Definition TableViewTypeTraits.h:231
static TSharedRef< T > NullableItemTypeConvertToItemType(const TSharedPtr< T > &InPtr)
Definition TableViewTypeTraits.h:253
static TSharedPtr< T > MakeNullPtr()
Definition TableViewTypeTraits.h:248
static bool IsPtrValid(const TSharedPtr< T > &InPtr)
Definition TableViewTypeTraits.h:238
static void ResetPtr(TSharedPtr< T > &InPtr)
Definition TableViewTypeTraits.h:243
static FString DebugDump(TSharedRef< T > InPtr)
Definition TableViewTypeTraits.h:258
TSharedPtr< T, ESPMode::ThreadSafe > NullableType
Definition TableViewTypeTraits.h:270
static TSharedPtr< T, ESPMode::ThreadSafe > MakeNullPtr()
Definition TableViewTypeTraits.h:294
static bool IsPtrValid(const TSharedPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:284
static TSharedRef< T, ESPMode::ThreadSafe > NullableItemTypeConvertToItemType(const TSharedPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:299
static void ResetPtr(TSharedPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:289
static void AddReferencedObjects(FReferenceCollector &, TArray< TSharedRef< T, ESPMode::ThreadSafe > > &, TSet< TSharedRef< T, ESPMode::ThreadSafe > > &, TMap< const U *, TSharedRef< T, ESPMode::ThreadSafe > > &)
Definition TableViewTypeTraits.h:277
static FString DebugDump(TSharedRef< T, ESPMode::ThreadSafe > InPtr)
Definition TableViewTypeTraits.h:304
static TWeakObjectPtr< T > NullableItemTypeConvertToItemType(const TWeakObjectPtr< T > &InPtr)
Definition TableViewTypeTraits.h:438
static void AddReferencedObjects(FReferenceCollector &, TArray< TWeakObjectPtr< T > > &, TSet< TWeakObjectPtr< T > > &, TMap< const U *, TWeakObjectPtr< T > > &)
Definition TableViewTypeTraits.h:416
static TWeakObjectPtr< T > MakeNullPtr()
Definition TableViewTypeTraits.h:433
static void ResetPtr(TWeakObjectPtr< T > &InPtr)
Definition TableViewTypeTraits.h:428
static FString DebugDump(TWeakObjectPtr< T > InPtr)
Definition TableViewTypeTraits.h:443
TWeakObjectPtr< T > NullableType
Definition TableViewTypeTraits.h:409
static bool IsPtrValid(const TWeakObjectPtr< T > &InPtr)
Definition TableViewTypeTraits.h:423
static void ResetPtr(TWeakPtr< T > &InPtr)
Definition TableViewTypeTraits.h:334
static bool IsPtrValid(const TWeakPtr< T > &InPtr)
Definition TableViewTypeTraits.h:329
static void AddReferencedObjects(FReferenceCollector &, TArray< TWeakPtr< T > > &, TSet< TWeakPtr< T > > &, TMap< const U *, TWeakPtr< T > > &)
Definition TableViewTypeTraits.h:322
static TWeakPtr< T > NullableItemTypeConvertToItemType(const TWeakPtr< T > &InPtr)
Definition TableViewTypeTraits.h:344
static FString DebugDump(TWeakPtr< T > InPtr)
Definition TableViewTypeTraits.h:349
static TWeakPtr< T > MakeNullPtr()
Definition TableViewTypeTraits.h:339
TWeakPtr< T > NullableType
Definition TableViewTypeTraits.h:315
static void ResetPtr(TWeakPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:380
static FString DebugDump(TWeakPtr< T, ESPMode::ThreadSafe > InPtr)
Definition TableViewTypeTraits.h:395
static TWeakPtr< T, ESPMode::ThreadSafe > MakeNullPtr()
Definition TableViewTypeTraits.h:385
TWeakPtr< T, ESPMode::ThreadSafe > NullableType
Definition TableViewTypeTraits.h:361
static void AddReferencedObjects(FReferenceCollector &, TArray< TWeakPtr< T, ESPMode::ThreadSafe > > &, TSet< TWeakPtr< T, ESPMode::ThreadSafe > > &, TMap< const U *, TWeakPtr< T, ESPMode::ThreadSafe > > &WidgetToItemMap)
Definition TableViewTypeTraits.h:368
static TWeakPtr< T, ESPMode::ThreadSafe > NullableItemTypeConvertToItemType(const TWeakPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:390
static bool IsPtrValid(const TWeakPtr< T, ESPMode::ThreadSafe > &InPtr)
Definition TableViewTypeTraits.h:375
FGCObject SerializerType
Definition TableViewTypeTraits.h:562
static void ResetPtr(T *&InPtr)
Definition TableViewTypeTraits.h:551
static FString DebugDump(T *InPtr)
Definition TableViewTypeTraits.h:557
static void AddReferencedObjects(FReferenceCollector &Collector, TArray< TObjectPtr< T > > &ItemsWithGeneratedWidgets, TSet< TObjectPtr< T > > &SelectedItems, TMap< const U *, TObjectPtr< T > > &WidgetToItemMap)
Definition TableViewTypeTraits.h:530
static T * NullableItemTypeConvertToItemType(T *InPtr)
Definition TableViewTypeTraits.h:555
static bool IsPtrValid(T *InPtr)
Definition TableViewTypeTraits.h:549
static T * MakeNullPtr()
Definition TableViewTypeTraits.h:553
T * NullableType
Definition TableViewTypeTraits.h:523
static const T * NullableItemTypeConvertToItemType(const T *InPtr)
Definition TableViewTypeTraits.h:601
FGCObject SerializerType
Definition TableViewTypeTraits.h:608
static FString DebugDump(const T *InPtr)
Definition TableViewTypeTraits.h:603
const T * NullableType
Definition TableViewTypeTraits.h:569
static void AddReferencedObjects(FReferenceCollector &Collector, TArray< TObjectPtr< const T > > &ItemsWithGeneratedWidgets, TSet< TObjectPtr< const T > > &SelectedItems, TMap< const U *, TObjectPtr< const T > > &WidgetToItemMap)
Definition TableViewTypeTraits.h:576
static const T * MakeNullPtr()
Definition TableViewTypeTraits.h:599
static void ResetPtr(const T *&InPtr)
Definition TableViewTypeTraits.h:597
static bool IsPtrValid(const T *InPtr)
Definition TableViewTypeTraits.h:595
Definition TableViewTypeTraits.h:121
Definition ObjectPtr.h:488
Definition WeakObjectPtrTemplates.h:25