14 template <
typename AttributeType, TDataColumnType ColumnType>
17 using namespace DataStorage::Private;
32 return Property.Get(Column, ColumnType::StaticStruct());
40 template <
typename AttributeType, TDynamicColumnTemplate ColumnType>
43 using namespace DataStorage::Private;
58 return Property.Get(Column, ColumnType::StaticStruct());
66 template <
typename AttributeType,
typename DataType, TDataColumnType ColumnType>
69 using namespace DataStorage::Private;
82 Storage = DataStorage,
90 return Property.Get(Column, ColumnType::StaticStruct());
99 template <
typename AttributeType,
typename DataType, TDynamicColumnTemplate ColumnType>
103 using namespace DataStorage::Private;
116 Storage = DataStorage,
125 return Property.Get(Column, ColumnType::StaticStruct());
134 template <
typename DataType, TDataColumnType ColumnType,
typename FunctionType>
139 using AttributeType =
decltype(
InConverter(std::declval<DataType>()));
144 template <
typename DataType, TDynamicColumnTemplate ColumnType,
typename FunctionType>
149 using AttributeType =
decltype(
InConverter(std::declval<DataType>()));
154 template <
typename AttributeType, TDataColumnType ColumnType>
162 Storage = DataStorage,
166 if(ColumnType* Column = Storage->GetColumn<ColumnType>(Row))
168 return Convertor(*Column);
171 return AttributeType();
177 template <TDataColumnType ColumnType,
typename FunctionType>
182 using AttributeType =
decltype(
InConverter(std::declval<const ColumnType&>()));
187 template <
typename AttributeType>
197 Storage = DataStorage,
201 if(
const void*
ColumnData = Storage->GetColumnData(Row, ColumnType.Get()))
203 return Convertor(ColumnType, ColumnData);
206 return AttributeType();
212 template <
typename FunctionType>
226 using namespace DataStorage::Private;
233 Row = TargetRow](ParamTypes&&... Params)
241 if(Delegate.IsBound())
253 using namespace DataStorage::Private;
268 if(Delegate.IsBound())
277 template <TDataColumnType ColumnType>
286 template <TDynamicColumnTemplate ColumnType>
295 template <TDataColumnType ColumnType>
304 template <TDynamicColumnTemplate ColumnType>
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition NameTypes.h:617
static CORE_API FText FromString(const ANSICHAR *String)
Definition Text.cpp:1081
static CORE_API FText FromName(const FName &Val)
Definition Text.cpp:1076
Definition Attribute.h:17
static UE_FORCEINLINE_HINT TAttribute CreateLambda(LambdaType &&InCallable, PayloadTypes &&... InputPayload)
Definition Attribute.h:155
Definition DelegateSignatureImpl.inl:310
Definition AndroidPlatformMisc.h:14
Definition UnrealType.h:1538
TAttribute< AttributeType > BindColumn(TFunction< AttributeType(const ColumnType &)> InConverter)
Definition TypedElementAttributeBinding.inl:155
TAttribute< AttributeType > BindData(AttributeType ColumnType::*InVariable, const AttributeType &InDefaultValue=AttributeType())
Definition TypedElementAttributeBinding.inl:15
TAttribute< FText > BindText(FString ColumnType::*InFStringVariable)
Definition TypedElementAttributeBinding.inl:278
TDelegate< InRetValType(ParamTypes...)> BindEvent(TDelegate< InRetValType(ParamTypes...)> ColumnType::*InVariable)
Definition TypedElementAttributeBinding.inl:224
TAttribute< AttributeType > BindColumnData(const TWeakObjectPtr< const UScriptStruct > &InColumnType, const TFunction< AttributeType(const TWeakObjectPtr< const UScriptStruct > &, const void *)> &InConverter)
Definition TypedElementAttributeBinding.inl:188
Definition TypedElementAttributeBindingProperty.h:25
Definition TypedElementAttributeBindingProperty.h:21
Definition TypedElementAttributeBindingProperty.h:17
Definition CommonTypes.h:95
Definition CommonTypes.h:91
Definition CommonTypes.cpp:10
Definition WeakObjectPtrTemplates.h:25