#include "llvm/ADT/iterator_range.h"
#include <algorithm>
#include <cstddef>
#include <iterator>
#include <type_traits>
#include <utility>
Go to the source code of this file.
|
class | llvm::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT > |
| CRTP base class which implements the entire standard iterator facade in terms of a minimal subset of the interface. More...
|
|
class | llvm::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT >::ReferenceProxy |
| A proxy object for computing a reference via indirecting a copy of an iterator. More...
|
|
class | llvm::iterator_adaptor_base< DerivedT, WrappedIteratorT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT > |
| CRTP base class for adapting an iterator to a different type. More...
|
|
struct | llvm::pointee_iterator< WrappedIteratorT, T > |
| An iterator type that allows iterating over the pointees via some other iterator. More...
|
|
class | llvm::pointer_iterator< WrappedIteratorT, T > |
|
class | llvm::WrappedPairNodeDataIterator< ItType, NodeRef, DataRef > |
|
|
| llvm |
| This class represents lattice values for constants.
|
|
|
template<typename RangeT , typename WrappedIteratorT = decltype(std::begin(std::declval<RangeT>()))> |
iterator_range< pointee_iterator< WrappedIteratorT > > | llvm::make_pointee_range (RangeT &&Range) |
|
template<typename RangeT , typename WrappedIteratorT = decltype(std::begin(std::declval<RangeT>()))> |
iterator_range< pointer_iterator< WrappedIteratorT > > | llvm::make_pointer_range (RangeT &&Range) |
|