5#include "Templates/IdentityFunctor.h"
6#include "Templates/Invoke.h"
7#include "Templates/UnrealTemplate.h"
11 template <
typename T,
typename ValueType,
typename ProjectionType>
12 T*
FindLastBy(T* First, SIZE_T Num,
const ValueType& Value, ProjectionType Proj)
25 template <
typename T,
typename PredicateType>
43
44
45
46
47
48
49
50 template <
typename RangeType,
typename ValueType>
58
59
60
61
62
63
64
65
66 template <
typename RangeType,
typename ValueType,
typename ProjectionType>
68 ->
decltype(
AlgoImpl::FindLastBy(GetData(Range), GetNum(Range), Value, MoveTemp(Proj)))
74
75
76
77
78
79
80
81 template <
typename RangeType,
typename PredicateType>
83 ->
decltype(
AlgoImpl::FindLastByPredicate(GetData(Range), GetNum(Range), MoveTemp(Pred)))
FORCEINLINE auto FindLastByPredicate(RangeType &&Range, PredicateType Pred) -> decltype(AlgoImpl::FindLastByPredicate(GetData(Range), GetNum(Range), MoveTemp(Pred)))
FORCEINLINE auto FindLast(RangeType &&Range, const ValueType &Value) -> decltype(AlgoImpl::FindLastBy(GetData(Range), GetNum(Range), Value, FIdentityFunctor()))
FORCEINLINE auto FindLastBy(RangeType &&Range, const ValueType &Value, ProjectionType Proj) -> decltype(AlgoImpl::FindLastBy(GetData(Range), GetNum(Range), Value, MoveTemp(Proj)))
T * FindLastBy(T *First, SIZE_T Num, const ValueType &Value, ProjectionType Proj)
T * FindLastByPredicate(T *First, SIZE_T Num, PredicateType Pred)