LLVM 22.0.0git
|
#include "llvm/ADT/STLExtras.h"
Public Types | |
using | Base = zip_traits<ZipType, ReferenceTupleType, Iters...> |
using | IndexSequence = std::index_sequence_for<Iters...> |
using | value_type = typename Base::value_type |
Public Types inherited from llvm::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT > | |
using | iterator_category = IteratorCategoryT |
using | value_type = T |
using | difference_type = DifferenceTypeT |
using | pointer = PointerT |
using | reference = ReferenceT |
Public Member Functions | |
zip_common (Iters &&... ts) | |
value_type | operator* () const |
ZipType & | operator++ () |
ZipType & | operator-- () |
bool | all_equals (zip_common &other) |
Return true if all the iterator are matching other's iterators. | |
Public Member Functions inherited from llvm::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT > | |
DerivedT | operator+ (DifferenceTypeT n) const |
DerivedT | operator- (DifferenceTypeT n) const |
DerivedT & | operator++ () |
DerivedT | operator++ (int) |
DerivedT & | operator-- () |
DerivedT | operator-- (int) |
bool | operator!= (const DerivedT &RHS) const |
bool | operator> (const DerivedT &RHS) const |
bool | operator<= (const DerivedT &RHS) const |
bool | operator>= (const DerivedT &RHS) const |
PointerProxy | operator-> () const |
ReferenceProxy | operator[] (DifferenceTypeT n) const |
Public Attributes | |
std::tuple< Iters... > | iterators |
Protected Member Functions | |
template<size_t... Ns> | |
value_type | deref (std::index_sequence< Ns... >) const |
template<size_t... Ns> | |
void | tup_inc (std::index_sequence< Ns... >) |
template<size_t... Ns> | |
void | tup_dec (std::index_sequence< Ns... >) |
template<size_t... Ns> | |
bool | test_all_equals (const zip_common &other, std::index_sequence< Ns... >) const |
Additional Inherited Members | |
Protected Types inherited from llvm::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT > | |
enum | { IsRandomAccess , IsBidirectional } |
Definition at line 679 of file STLExtras.h.
using llvm::detail::zip_common< ZipType, ReferenceTupleType, Iters >::Base = zip_traits<ZipType, ReferenceTupleType, Iters...> |
Definition at line 680 of file STLExtras.h.
using llvm::detail::zip_common< ZipType, ReferenceTupleType, Iters >::IndexSequence = std::index_sequence_for<Iters...> |
Definition at line 681 of file STLExtras.h.
using llvm::detail::zip_common< ZipType, ReferenceTupleType, Iters >::value_type = typename Base::value_type |
Definition at line 682 of file STLExtras.h.
|
inline |
Definition at line 707 of file STLExtras.h.
References iterators.
Referenced by all_equals(), and test_all_equals().
|
inline |
Return true if all the iterator are matching other's iterators.
Definition at line 724 of file STLExtras.h.
References test_all_equals(), and zip_common().
|
inlineprotected |
|
inline |
Definition at line 709 of file STLExtras.h.
References deref().
|
inline |
Definition at line 711 of file STLExtras.h.
References tup_inc().
|
inline |
Definition at line 716 of file STLExtras.h.
References llvm::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT >::IsBidirectional, and tup_dec().
|
inlineprotected |
Definition at line 700 of file STLExtras.h.
References iterators, and zip_common().
Referenced by all_equals().
|
inlineprotected |
|
inlineprotected |
std::tuple<Iters...> llvm::detail::zip_common< ZipType, ReferenceTupleType, Iters >::iterators |
Definition at line 684 of file STLExtras.h.
Referenced by deref(), llvm::detail::zip_first< Iters >::operator==(), test_all_equals(), tup_dec(), tup_inc(), and zip_common().