StaticArrayInterface< TYPE >::IteratorTemplate< COLLECTION_TYPE > Class Template Reference

#include <array.h>

Public Types

using  CollectionType = COLLECTION_TYPE
using  类型 = typename InheritConst < TYPE, COLLECTION_TYPE >::type

公共成员函数

  IteratorTemplate ( CollectionType &a)
  IteratorTemplate ( CollectionType &a, Int start)
  IteratorTemplate (const IteratorTemplate & src )=default
  IteratorTemplate ()
  MAXON_OPERATOR_COPY_ASSIGNMENT ( IteratorTemplate )
  operator IteratorTemplate< const COLLECTION_TYPE > & ()
类型 operator* () const
类型 operator-> () const
Bool   operator== (const IteratorTemplate &b) const
Bool   operator< (const IteratorTemplate &b) const
  MAXON_OPERATOR_COMPARISON ( IteratorTemplate )
IteratorTemplate operator++ ()
IteratorTemplate   operator++ (int)
IteratorTemplate operator+= ( Int i)
IteratorTemplate operator-- ()
IteratorTemplate   operator-- (int)
IteratorTemplate operator-= ( Int i)
IteratorTemplate   operator+ ( Int i) const
IteratorTemplate   operator- ( Int i) const
Int   operator- (const IteratorTemplate &b) const
Int   GetIndex () const
Int   GetBlock ( StridedBlock < 类型 > &block) const
Int   GetBlock ( Block < 类型 , false > &block) const
类型 FetchNonStridedBlock ( Int count=1)

私有成员函数

void  ValidateBlock ( Bool check)
Int   GetStride () const

Private Attributes

CollectionType _array
类型 _ptr
Int   _index
Int   _stride
Int   _blockStartIndex
Int   _blockEndIndex

Member Typedef Documentation

◆  CollectionType

using CollectionType = COLLECTION_TYPE

◆  类型

using 类型 = typename InheritConst <TYPE, COLLECTION_TYPE>::type

构造函数 & 析构函数文档编制

◆  IteratorTemplate() [1/4]

IteratorTemplate ( CollectionType a )
explicit

◆  IteratorTemplate() [2/4]

IteratorTemplate ( CollectionType a ,
Int   start  
)
explicit

◆  IteratorTemplate() [3/4]

IteratorTemplate ( const IteratorTemplate < COLLECTION_TYPE > &  src )
default

◆  IteratorTemplate() [4/4]

IteratorTemplate ( )

成员函数文档编制

◆  MAXON_OPERATOR_COPY_ASSIGNMENT()

MAXON_OPERATOR_COPY_ASSIGNMENT ( IteratorTemplate < COLLECTION_TYPE >  )

◆  operator IteratorTemplate< const COLLECTION_TYPE > &()

operator IteratorTemplate < const COLLECTION_TYPE > & ( )

◆  operator*()

类型 & operator* ( ) const

◆  operator->()

类型 * operator-> ( ) const

◆  operator==()

Bool operator== ( const IteratorTemplate < COLLECTION_TYPE > &  b ) const

◆  operator<()

Bool operator< ( const IteratorTemplate < COLLECTION_TYPE > &  b ) const

◆  MAXON_OPERATOR_COMPARISON()

MAXON_OPERATOR_COMPARISON ( IteratorTemplate < COLLECTION_TYPE >  )

◆  operator++() [1/2]

IteratorTemplate & operator++ ( )

◆  operator++() [2/2]

IteratorTemplate operator++ ( int  )

◆  operator+=()

IteratorTemplate & operator+= ( Int   i )

◆  operator--() [1/2]

IteratorTemplate & operator-- ( )

◆  operator--() [2/2]

IteratorTemplate operator-- ( int  )

◆  operator-=()

IteratorTemplate & operator-= ( Int   i )

◆  operator+()

IteratorTemplate operator+ ( Int   i ) const

◆  operator-() [1/2]

IteratorTemplate operator- ( Int   i ) const

◆  operator-() [2/2]

Int operator- ( const IteratorTemplate < COLLECTION_TYPE > &  b ) const

◆  GetIndex()

Int GetIndex ( ) const

◆  GetBlock() [1/2]

Int GetBlock ( StridedBlock < 类型 > &  block ) const

◆  GetBlock() [2/2]

Int GetBlock ( Block < 类型 , false > &  block ) const

◆  FetchNonStridedBlock()

类型 * FetchNonStridedBlock ( Int   count = 1 )

◆  ValidateBlock()

void ValidateBlock ( Bool   check )
private

◆  GetStride()

Int GetStride ( ) const
private

Member Data Documentation

◆  _array

CollectionType * _array
private

◆  _ptr

类型 * _ptr
private

◆  _index

Int _index
private

◆  _stride

Int _stride
private

◆  _blockStartIndex

Int _blockStartIndex
private

◆  _blockEndIndex

Int _blockEndIndex
private