LLVM 20.0.0git
|
This provides a very simple, boring adaptor for a begin and end iterator into a range type. More...
Go to the source code of this file.
Classes | |
struct | llvm::explicitly_convertible< From, To, typename > |
struct | llvm::explicitly_convertible< From, To, std::void_t< decltype(static_cast< To >(std::declval< std::add_rvalue_reference_t< From > >()))> > |
class | llvm::iterator_range< IteratorT > |
A range adaptor for a pair of iterators. More... | |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
Functions | |
template<typename Container > | |
llvm::iterator_range (Container &&) -> iterator_range< llvm::detail::IterOfRange< Container > > | |
template<class T > | |
iterator_range< T > | llvm::make_range (T x, T y) |
Convenience function for iterating over sub-ranges. | |
template<typename T > | |
iterator_range< T > | llvm::make_range (std::pair< T, T > p) |
This provides a very simple, boring adaptor for a begin and end iterator into a range type.
This should be used to build range views that work well with range based for loops and range based constructors.
Note that code here follows more standards-based coding conventions as it is mirroring proposed interfaces for standardization.
Definition in file iterator_range.h.