6#include "Templates/IdentityFunctor.h"
7#include "Templates/Invoke.h"
13 template <
typename RangeType,
typename ProjectionType,
typename PredicateType>
18 for (
auto&
Elem : Range)
39 template <
typename RangeType>
54 template <
typename RangeType,
typename ComparatorType>
69 template <
typename RangeType,
typename ProjectionType>
85 template <
typename RangeType,
typename ProjectionType,
typename ComparatorType>
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
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition BinarySearch.h:10
constexpr TRangePointerType< RangeType >::Type MaxElementBy(RangeType &Range, ProjectionType Proj, PredicateType Pred)
Definition MaxElement.h:14
Definition ParallelSort.h:13
UE_REWRITE auto MaxElementBy(RangeType &&Range, ProjectionType Proj) -> decltype(AlgoImpl::MaxElementBy(Range, MoveTemp(Proj), TLess<>()))
Definition MaxElement.h:70
UE_REWRITE constexpr auto MaxElement(RangeType &&Range) -> decltype(AlgoImpl::MaxElementBy(Range, FIdentityFunctor(), TLess<>()))
Definition MaxElement.h:40
decltype(&*DeclVal< RangeType & >().begin()) Type
Definition RangePointerType.h:15
Definition IdentityFunctor.h:11