LLVM  8.0.1
Public Types | Public Member Functions | List of all members
llvm::detail::zip_longest_iterator< Iters > Class Template Reference

#include "llvm/ADT/STLExtras.h"

Inheritance diagram for llvm::detail::zip_longest_iterator< Iters >:
Inheritance graph
[legend]
Collaboration diagram for llvm::detail::zip_longest_iterator< Iters >:
Collaboration graph
[legend]

Public Types

using value_type = typename ZipLongestTupleType< Iters... >::type
 

Public Member Functions

 zip_longest_iterator (std::pair< Iters &&, Iters &&>... ts)
 
value_type operator* ()
 
value_type operator* () const
 
zip_longest_iterator< Iters... > & operator++ ()
 
bool operator== (const zip_longest_iterator< Iters... > &other) const
 
- Public Member Functions inherited from llvm::iterator_facade_base< zip_longest_iterator< Iters... >, std::common_type< std::forward_iterator_tag, std::iterator_traits< Iters >::iterator_category... >::type, ZipLongestTupleType< Iters... >::type, std::iterator_traits< std::tuple_element< 0, std::tuple< Iters... > >::type >::difference_type, ZipLongestTupleType< Iters... >::type *, ZipLongestTupleType< Iters... >::type >
zip_longest_iterator< Iters... > operator+ (std::iterator_traits< std::tuple_element< 0, std::tuple< Iters... > >::type >::difference_type n) const
 
zip_longest_iterator< Iters... > operator- (std::iterator_traits< std::tuple_element< 0, std::tuple< Iters... > >::type >::difference_type n) const
 
zip_longest_iterator< Iters... > & operator++ ()
 
zip_longest_iterator< Iters... > operator++ (int)
 
zip_longest_iterator< Iters... > & operator-- ()
 
zip_longest_iterator< Iters... > operator-- (int)
 
bool operator!= (const zip_longest_iterator< Iters... > &RHS) const
 
bool operator> (const zip_longest_iterator< Iters... > &RHS) const
 
bool operator<= (const zip_longest_iterator< Iters... > &RHS) const
 
bool operator>= (const zip_longest_iterator< Iters... > &RHS) const
 
ZipLongestTupleType< Iters... >::typeoperator-> ()
 
ZipLongestTupleType< Iters... >::typeoperator-> () const
 
ReferenceProxy operator[] (std::iterator_traits< std::tuple_element< 0, std::tuple< Iters... > >::type >::difference_type n)
 
ReferenceProxy operator[] (std::iterator_traits< std::tuple_element< 0, std::tuple< Iters... > >::type >::difference_type n) const
 

Additional Inherited Members

- Protected Types inherited from llvm::iterator_facade_base< zip_longest_iterator< Iters... >, std::common_type< std::forward_iterator_tag, std::iterator_traits< Iters >::iterator_category... >::type, ZipLongestTupleType< Iters... >::type, std::iterator_traits< std::tuple_element< 0, std::tuple< Iters... > >::type >::difference_type, ZipLongestTupleType< Iters... >::type *, ZipLongestTupleType< Iters... >::type >
enum  
 

Detailed Description

template<typename... Iters>
class llvm::detail::zip_longest_iterator< Iters >

Definition at line 704 of file STLExtras.h.

Member Typedef Documentation

◆ value_type

template<typename... Iters>
using llvm::detail::zip_longest_iterator< Iters >::value_type = typename ZipLongestTupleType<Iters...>::type

Definition at line 716 of file STLExtras.h.

Constructor & Destructor Documentation

◆ zip_longest_iterator()

template<typename... Iters>
llvm::detail::zip_longest_iterator< Iters >::zip_longest_iterator ( std::pair< Iters &&, Iters &&>...  ts)
inline

Definition at line 743 of file STLExtras.h.

Member Function Documentation

◆ operator*() [1/2]

template<typename... Iters>
value_type llvm::detail::zip_longest_iterator< Iters >::operator* ( )
inline

Definition at line 747 of file STLExtras.h.

◆ operator*() [2/2]

template<typename... Iters>
value_type llvm::detail::zip_longest_iterator< Iters >::operator* ( ) const
inline

Definition at line 749 of file STLExtras.h.

◆ operator++()

template<typename... Iters>
zip_longest_iterator<Iters...>& llvm::detail::zip_longest_iterator< Iters >::operator++ ( )
inline

Definition at line 751 of file STLExtras.h.

◆ operator==()

template<typename... Iters>
bool llvm::detail::zip_longest_iterator< Iters >::operator== ( const zip_longest_iterator< Iters... > &  other) const
inline

Definition at line 756 of file STLExtras.h.


The documentation for this class was generated from the following file: