My Project
|
#include <Region.h>
Public Member Functions | |
RegionRange (MutableArrayRef< Region > regions=llvm::None) | |
template<typename Arg , typename = typename std::enable_if_t<std::is_constructible< ArrayRef<std::unique_ptr<Region>>, Arg>::value>> | |
RegionRange (Arg &&arg) | |
RegionRange (ArrayRef< std::unique_ptr< Region >> regions) | |
![]() | |
indexed_accessor_range_base (iterator begin, iterator end) | |
indexed_accessor_range_base (const iterator_range< iterator > &range) | |
indexed_accessor_range_base (PointerUnion< Region *, const std::unique_ptr< Region > * > base, ptrdiff_t count) | |
iterator | begin () const |
iterator | end () const |
Region * | operator[] (unsigned index) const |
size_t | size () const |
Return the size of this range. More... | |
bool | empty () const |
Return if the range is empty. More... | |
RegionRange | slice (size_t n, size_t m) const |
Drop the first N elements, and keep M elements. More... | |
RegionRange | drop_front (size_t n=1) const |
Drop the first n elements. More... | |
RegionRange | drop_back (size_t n=1) const |
Drop the last n elements. More... | |
RegionRange | take_front (size_t n=1) const |
Take the first n elements. More... | |
operator SmallVector< SVT, N > () const | |
This class provides an abstraction over the different types of ranges over Regions. In many cases, this prevents the need to explicitly materialize a SmallVector/std::vector. This class should be used in places that are not suitable for a more derived type (e.g. ArrayRef) or a template range parameter.
RegionRange::RegionRange | ( | MutableArrayRef< Region > | regions = llvm::None | ) |
|
inline |