5#include "Templates/UnrealTemplate.h"
10template <
typename ElementType,
typename SizeType = int32>
44template <
typename ElementType,
typename SizeType = int32>
49 template <
typename IteratorType,
typename SizeType>
60 template <
typename EndIteratorType>
74template <
typename RangeType,
typename SizeType>
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107template <
typename RangeType>
110 return { (RangeType&&)Range };
112template <
typename T, SIZE_T N>
115 static_assert(N <=
MAX_int32,
"Array size is not supported by Enumerate");
auto EnumerateRange(RangeType &&Range) -> TEnumerateRange< RangeType, decltype(GetNum(Range))>
TEnumerateRange< T(&) EnumerateRange[N], int32 >(T(&Range)[N])
auto begin() const -> UE::Core::Private::TEnumerateIter< decltype(std::begin(Range)), SizeType >
ElementType & operator*() const
SizeType GetIndex() const
TEnumerateRef(ElementType &InRef, SizeType InIndex)
ElementType * operator->() const
bool operator!=(EndIteratorType End) const
auto operator*() const -> TEnumerateRef< std::remove_reference_t< decltype(*this->Iterator)>, SizeType >