NestedForEachIterator< I1, I2 > Class Template Reference Data Structures

#include <foreach.h>

Inheritance diagram for NestedForEachIterator< I1, I2 >:

Public Types

using  Outer = I1
using  Inner = I2
using  ValueType = decltype(*std::declval< I2 >())
-  Public Types inherited from ForEachIterator< NestedForEachIterator< I1, I2 > >
using  IsForEachIterator = std::true_type

公共成员函数

MAXON_ATTRIBUTE_FORCE_INLINE   NestedForEachIterator (I1 &&it)
MAXON_ATTRIBUTE_FORCE_INLINE   ~NestedForEachIterator ()
MAXON_ATTRIBUTE_FORCE_INLINE   operator Bool () const
MAXON_ATTRIBUTE_FORCE_INLINE void  operator++ ()
MAXON_ATTRIBUTE_FORCE_INLINE ValueType   operator* () const
MAXON_ATTRIBUTE_FORCE_INLINE std::remove_reference< ValueType >::type *  operator-> () const
-  Public Member Functions inherited from ForEachIterator< NestedForEachIterator< I1, I2 > >
MAXON_ATTRIBUTE_FORCE_INLINE   ForEachIterator (ARGS &&... args)
String   ToString (const FormatStatement *formatStatement=nullptr)
NestedForEachIterator < I1, I2 > &  Find (const T &v)
Int   FindIndex (const T &v)
MAXON_ATTRIBUTE_FORCE_INLINE Bool   Contains (const T &v)
MAXON_ATTRIBUTE_FORCE_INLINE Wrapper  begin ()

私有成员函数

void  MoveToValid ()

Private Attributes

I1  _outerIterator
union {
    Char     _innerIterator [ SIZEOF (I2)]
   void *    _alignmentDummy
}; 
Bool   _valid

Additional Inherited Members

-  Static Public Member Functions inherited from ForEachIterator< NestedForEachIterator< I1, I2 > >
static MAXON_ATTRIBUTE_FORCE_INLINE   PRIVATE_MAXON_RBF_SENTINEL (Wrapper) end()

Member Typedef Documentation

◆  Outer

using Outer = I1

◆  Inner

using Inner = I2

◆  ValueType

using ValueType = decltype(*std::declval<I2>())

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

◆  NestedForEachIterator()

MAXON_ATTRIBUTE_FORCE_INLINE NestedForEachIterator ( I1 &&  it )
explicit

◆  ~NestedForEachIterator()

MAXON_ATTRIBUTE_FORCE_INLINE ~ NestedForEachIterator ( )

成员函数文档编制

◆  operator Bool()

MAXON_ATTRIBUTE_FORCE_INLINE operator Bool ( ) const
explicit

◆  operator++()

MAXON_ATTRIBUTE_FORCE_INLINE void operator++ ( )

◆  operator*()

MAXON_ATTRIBUTE_FORCE_INLINE ValueType operator* ( ) const

◆  operator->()

MAXON_ATTRIBUTE_FORCE_INLINE std::remove_reference< ValueType >::type* operator-> ( ) const

◆  MoveToValid()

void MoveToValid ( )
private

Member Data Documentation

◆  _outerIterator

I1 _outerIterator private

◆  _innerIterator

Char _innerIterator[ SIZEOF (I2)]

◆  _alignmentDummy

void* _alignmentDummy

◆  @1043

union { ... }

◆  _valid

Bool _valid
private