UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Includes.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreTypes.h"
6#include "Templates/Less.h"
7#include "Templates/IdentityFunctor.h"
8#include "Templates/Invoke.h"
10
11namespace Algo::Private
12{
13 template <typename DataTypeA, typename SizeTypeA, typename DataTypeB, typename SizeTypeB, typename ProjectionType, typename SortPredicateType>
15 {
16 SizeTypeA IndexA = 0;
17 SizeTypeB IndexB = 0;
18
19 for (; IndexB < NumB; ++IndexA)
20 {
21 if (IndexA >= NumA)
22 {
23 return false;
24 }
25
26 const auto& RefA = Invoke(Projection, DataA[IndexA]);
27 const auto& RefB = Invoke(Projection, DataB[IndexB]);
28
30 {
31 return false;
32 }
33
35 {
36 ++IndexB;
37 }
38 }
39 return true;
40 }
41}
42
43namespace Algo
44{
54 template <typename RangeTypeA, typename RangeTypeB>
59
70 template <typename RangeTypeA, typename RangeTypeB, typename SortPredicateType>
75
86 template <typename RangeTypeA, typename RangeTypeB, typename ProjectionType>
91
103 template <typename RangeTypeA, typename RangeTypeB, typename ProjectionType, typename SortPredicateType>
108}
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
bool SortPredicate(const FCompileOnTheFlyData &A, const FCompileOnTheFlyData &B)
Definition MovieSceneCompiledDataManager.cpp:364
AUTORTFM_INFER constexpr auto Projection(Invocable0Type &&Invocable0, InvocableTypes &&... Invocables)
Definition Projection.h:108
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 Compare.h:13
constexpr bool Includes(const DataTypeA *DataA, SizeTypeA NumA, const DataTypeB *DataB, SizeTypeB NumB, ProjectionType Projection, SortPredicateType SortPredicate)
Definition Includes.h:14
Definition ParallelSort.h:13
constexpr bool IncludesBy(const RangeTypeA &RangeA, const RangeTypeB &RangeB, ProjectionType Projection)
Definition Includes.h:87
constexpr bool Includes(const RangeTypeA &RangeA, const RangeTypeB &RangeB)
Definition Includes.h:55
Definition IdentityFunctor.h:11
Definition Less.h:19