5#include "Templates/IdentityFunctor.h"
6#include "Templates/Invoke.h"
11 template <
typename T,
typename ValueType,
typename ProjectionType>
25 template <
typename T,
typename PredicateType>
50 template <
typename RangeType,
typename ValueType>
66 template <
typename RangeType,
typename ValueType,
typename ProjectionType>
81 template <
typename RangeType,
typename PredicateType>
AUTORTFM_INFER UE_FORCEINLINE_HINT constexpr auto Invoke(FuncType &&Func, ArgTypes &&... Args) -> decltype(((FuncType &&) Func)((ArgTypes &&) Args...))
Definition Invoke.h:44
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
auto GetNum(const TStringConversion< Converter, DefaultConversionSize > &Conversion) -> decltype(Conversion.Length())
Definition StringConv.h:808
auto GetData(const TStringConversion< Converter, DefaultConversionSize > &Conversion) -> decltype(Conversion.Get())
Definition StringConv.h:802
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition BinarySearch.h:10
T * FindLastBy(T *First, SIZE_T Num, const ValueType &Value, ProjectionType Proj)
Definition FindLast.h:12
T * FindLastByPredicate(T *First, SIZE_T Num, PredicateType Pred)
Definition FindLast.h:26
Definition ParallelSort.h:13
UE_REWRITE auto FindLast(RangeType &&Range, const ValueType &Value) -> decltype(AlgoImpl::FindLastBy(GetData(Range), GetNum(Range), Value, FIdentityFunctor()))
Definition FindLast.h:51
UE_REWRITE auto FindLastBy(RangeType &&Range, const ValueType &Value, ProjectionType Proj) -> decltype(AlgoImpl::FindLastBy(GetData(Range), GetNum(Range), Value, MoveTemp(Proj)))
Definition FindLast.h:67
UE_REWRITE auto FindLastByPredicate(RangeType &&Range, PredicateType Pred) -> decltype(AlgoImpl::FindLastByPredicate(GetData(Range), GetNum(Range), MoveTemp(Pred)))
Definition FindLast.h:82
Definition IdentityFunctor.h:11