MapForEachIterator< MAP, I > Class Template Reference

#include <foreach.h>

Inheritance diagram for MapForEachIterator< MAP, I >:

Public Types

using ValueType = decltype(std::declval< MAP >()(*std::declval< I >()))
 
using Iterator = I
 
- Public Types inherited from ForEachIterator< MapForEachIterator< MAP, I > >
using IsForEachIterator = std::true_type
 

Public Member Functions

MAXON_ATTRIBUTE_FORCE_INLINE MapForEachIterator (I &&it, MAP &&map)
 
MAXON_ATTRIBUTE_FORCE_INLINE MapForEachIterator (const I &it, MAP &&map)
 
MAXON_ATTRIBUTE_FORCE_INLINE MapForEachIterator (MapForEachIterator &&src)
 
 MapForEachIterator (const MapForEachIterator &src)=default
 
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 >::typeoperator-> () const
 
- Public Member Functions inherited from ForEachIterator< MapForEachIterator< MAP, I > >
MAXON_ATTRIBUTE_FORCE_INLINE ForEachIterator (ARGS &&... args)
 
String ToString (const FormatStatement *formatStatement=nullptr)
 
MapForEachIterator< MAP, I > & Find (const T &v)
 
Int FindIndex (const T &v)
 
MAXON_ATTRIBUTE_FORCE_INLINE Bool Contains (const T &v)
 
MAXON_ATTRIBUTE_FORCE_INLINE Wrapper begin ()
 

Private Attributes

_iterator
 
MAP _map
 

Additional Inherited Members

- Static Public Member Functions inherited from ForEachIterator< MapForEachIterator< MAP, I > >
static MAXON_ATTRIBUTE_FORCE_INLINE PRIVATE_MAXON_RBF_SENTINEL (Wrapper) end()
 

Member Typedef Documentation

◆ ValueType

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

◆ Iterator

using Iterator = I

Constructor & Destructor Documentation

◆ MapForEachIterator() [1/4]

MAXON_ATTRIBUTE_FORCE_INLINE MapForEachIterator ( I &&  it,
MAP &&  map 
)

◆ MapForEachIterator() [2/4]

MAXON_ATTRIBUTE_FORCE_INLINE MapForEachIterator ( const I &  it,
MAP &&  map 
)

◆ MapForEachIterator() [3/4]

◆ MapForEachIterator() [4/4]

MapForEachIterator ( const MapForEachIterator< MAP, I > &  src)
default

Member Function Documentation

◆ operator Bool()

MAXON_ATTRIBUTE_FORCE_INLINE operator Bool ( ) const
explicit

◆ operator++()

MAXON_ATTRIBUTE_FORCE_INLINE void operator++ ( )

◆ operator*()

◆ operator->()

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

Member Data Documentation

◆ _iterator

I _iterator
private

◆ _map

MAP _map
private