Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
ArrayView.h File Reference
+ Include dependency graph for ArrayView.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ArrayViewPrivate::TIsCompatibleElementType< T, ElementType >
 
struct  ArrayViewPrivate::TIsCompatibleRangeType< RangeType, ElementType >
 
struct  ArrayViewPrivate::TIsReinterpretableRangeType< RangeType, ElementType >
 
struct  TIsTArrayView< T >
 
struct  TIsTArrayView< TArrayView< InElementType, InSizeType > >
 
struct  TIsTArrayView< volatile TArrayView< InElementType, InSizeType > >
 
struct  TIsTArrayView< const TArrayView< InElementType, InSizeType > >
 
struct  TIsTArrayView< const volatile TArrayView< InElementType, InSizeType > >
 
class  TArrayView< InElementType, InSizeType >
 
struct  TIsZeroConstructType< TArrayView< InElementType > >
 
struct  TIsContiguousContainer< TArrayView< T, SizeType > >
 

Namespaces

namespace  ArrayViewPrivate
 

Functions

template<typename T >
FORCEINLINE decltype(auto) ArrayViewPrivate::GetDataHelper (T &&Arg)
 
template<typename T >
FORCEINLINE decltype(auto) ArrayViewPrivate::GetReinterpretedDataHelper (T &&Arg)
 
template<typename OtherRangeType , typename CVUnqualifiedOtherRangeType = typename TRemoveCV<typename TRemoveReference<OtherRangeType>::Type>::Type, typename = typename TEnableIf<TIsContiguousContainer<CVUnqualifiedOtherRangeType>::Value>::Type, std::enable_if_t< TIsTArrayView< std::decay_t< OtherRangeType > >::Value > * = nullptr>
auto MakeArrayView (OtherRangeType &&Other)
 
template<typename OtherRangeType , typename CVUnqualifiedOtherRangeType = typename TRemoveCV<typename TRemoveReference<OtherRangeType>::Type>::Type, typename = typename TEnableIf<TIsContiguousContainer<CVUnqualifiedOtherRangeType>::Value>::Type, std::enable_if_t<!TIsTArrayView< std::decay_t< OtherRangeType > >::Value > * = nullptr>
auto MakeArrayView (OtherRangeType &&Other UE_LIFETIMEBOUND)
 
template<typename ElementType >
auto MakeArrayView (ElementType *Pointer UE_LIFETIMEBOUND, int32 Size)
 
template<typename T >
TArrayView< const T > MakeArrayView (std::initializer_list< T > List UE_LIFETIMEBOUND)
 
template<typename ElementType , typename SizeType , typename OtherElementType , typename OtherSizeType >
bool operator== (TArrayView< ElementType, SizeType >, TArrayView< OtherElementType, OtherSizeType >)=delete
 
template<typename ElementType , typename SizeType , typename OtherElementType , typename OtherSizeType >
bool operator!= (TArrayView< ElementType, SizeType >, TArrayView< OtherElementType, OtherSizeType >)=delete
 
template<typename RangeType , typename ElementType , typename = decltype(ImplicitConv<const ElementType*>(GetData(DeclVal<RangeType&>())))>
bool operator== (RangeType &&Lhs, TArrayView< ElementType > Rhs)
 
template<typename RangeType , typename ElementType , typename = decltype(ImplicitConv<const ElementType*>(GetData(DeclVal<RangeType&>())))>
bool operator== (TArrayView< ElementType > Lhs, RangeType &&Rhs)
 
template<typename RangeType , typename ElementType , typename = decltype(ImplicitConv<const ElementType*>(GetData(DeclVal<RangeType&>())))>
bool operator!= (RangeType &&Lhs, TArrayView< ElementType > Rhs)
 
template<typename RangeType , typename ElementType , typename = decltype(ImplicitConv<const ElementType*>(GetData(DeclVal<RangeType&>())))>
bool operator!= (TArrayView< ElementType > Lhs, RangeType &&Rhs)
 

Function Documentation

◆ MakeArrayView() [1/4]

template<typename ElementType >
auto MakeArrayView ( ElementType *Pointer UE_LIFETIMEBOUND,
int32 Size )

Definition at line 773 of file ArrayView.h.

◆ MakeArrayView() [2/4]

template<typename OtherRangeType , typename CVUnqualifiedOtherRangeType = typename TRemoveCV<typename TRemoveReference<OtherRangeType>::Type>::Type, typename = typename TEnableIf<TIsContiguousContainer<CVUnqualifiedOtherRangeType>::Value>::Type, std::enable_if_t<!TIsTArrayView< std::decay_t< OtherRangeType > >::Value > * = nullptr>
auto MakeArrayView ( OtherRangeType &&Other UE_LIFETIMEBOUND)

Definition at line 767 of file ArrayView.h.

◆ MakeArrayView() [3/4]

template<typename OtherRangeType , typename CVUnqualifiedOtherRangeType = typename TRemoveCV<typename TRemoveReference<OtherRangeType>::Type>::Type, typename = typename TEnableIf<TIsContiguousContainer<CVUnqualifiedOtherRangeType>::Value>::Type, std::enable_if_t< TIsTArrayView< std::decay_t< OtherRangeType > >::Value > * = nullptr>
auto MakeArrayView ( OtherRangeType && Other)

Definition at line 757 of file ArrayView.h.

◆ MakeArrayView() [4/4]

template<typename T >
TArrayView< const T > MakeArrayView ( std::initializer_list< T > List UE_LIFETIMEBOUND)

Definition at line 779 of file ArrayView.h.

◆ operator!=() [1/3]

template<typename RangeType , typename ElementType , typename = decltype(ImplicitConv<const ElementType*>(GetData(DeclVal<RangeType&>())))>
bool operator!= ( RangeType && Lhs,
TArrayView< ElementType > Rhs )

Inequality operator.

Parameters
LhsAnother ranged type to compare.
Returns
False if this array view's contents and the other ranged type match. True otherwise.

Definition at line 833 of file ArrayView.h.

◆ operator!=() [2/3]

template<typename RangeType , typename ElementType , typename = decltype(ImplicitConv<const ElementType*>(GetData(DeclVal<RangeType&>())))>
bool operator!= ( TArrayView< ElementType > Lhs,
RangeType && Rhs )

Definition at line 843 of file ArrayView.h.

◆ operator!=() [3/3]

template<typename ElementType , typename SizeType , typename OtherElementType , typename OtherSizeType >
bool operator!= ( TArrayView< ElementType, SizeType > ,
TArrayView< OtherElementType, OtherSizeType >  )
delete

◆ operator==() [1/3]

template<typename RangeType , typename ElementType , typename = decltype(ImplicitConv<const ElementType*>(GetData(DeclVal<RangeType&>())))>
bool operator== ( RangeType && Lhs,
TArrayView< ElementType > Rhs )

Equality operator.

Parameters
LhsAnother ranged type to compare.
Returns
True if this array view's contents and the other ranged type match. False otherwise.

Definition at line 805 of file ArrayView.h.

◆ operator==() [2/3]

template<typename RangeType , typename ElementType , typename = decltype(ImplicitConv<const ElementType*>(GetData(DeclVal<RangeType&>())))>
bool operator== ( TArrayView< ElementType > Lhs,
RangeType && Rhs )

Definition at line 816 of file ArrayView.h.

◆ operator==() [3/3]

template<typename ElementType , typename SizeType , typename OtherElementType , typename OtherSizeType >
bool operator== ( TArrayView< ElementType, SizeType > ,
TArrayView< OtherElementType, OtherSizeType >  )
delete