|
LLVM 23.0.0git
|
A memory-efficient immutable range with a single value repeated N times. More...
#include "llvm/ADT/Repeated.h"
Classes | |
| struct | Storage |
| Wrapper for the stored value used as a PointerUnion target in range types (e.g., TypeRange, ValueRange). More... | |
Public Types | |
| using | iterator = RepeatedIterator<T> |
| using | const_iterator = iterator |
| using | reverse_iterator = std::reverse_iterator<iterator> |
| using | const_reverse_iterator = reverse_iterator |
| using | value_type = T |
| using | size_type = size_t |
Public Member Functions | |
| template<typename U> | |
| Repeated (size_t count, U &&value) | |
| Create a value repeated count times. | |
| iterator | begin () const |
| iterator | end () const |
| reverse_iterator | rbegin () const |
| reverse_iterator | rend () const |
| size_t | size () const |
| bool | empty () const |
| const T & | value () const |
| const T & | operator[] (size_t idx) const |
Public Attributes | |
| Storage | storage |
| size_t | count |
A memory-efficient immutable range with a single value repeated N times.
The value is owned by the range.
Repeated<T> is also a proper random-access range: begin()/end() return iterators that always dereference to the same stored value.
Definition at line 75 of file Repeated.h.
| using llvm::Repeated< T >::const_iterator = iterator |
Definition at line 92 of file Repeated.h.
| using llvm::Repeated< T >::const_reverse_iterator = reverse_iterator |
Definition at line 94 of file Repeated.h.
| using llvm::Repeated< T >::iterator = RepeatedIterator<T> |
Definition at line 91 of file Repeated.h.
| using llvm::Repeated< T >::reverse_iterator = std::reverse_iterator<iterator> |
Definition at line 93 of file Repeated.h.
| using llvm::Repeated< T >::size_type = size_t |
Definition at line 96 of file Repeated.h.
| using llvm::Repeated< T >::value_type = T |
Definition at line 95 of file Repeated.h.
|
inline |
Create a value repeated count times.
Uses the same argument order like STD container constructors.
Definition at line 88 of file Repeated.h.
|
inline |
|
inline |
Definition at line 106 of file Repeated.h.
References count.
|
inline |
|
inline |
|
inline |
Definition at line 102 of file Repeated.h.
References end().
|
inline |
Definition at line 103 of file Repeated.h.
References begin().
|
inline |
|
inline |
| size_t llvm::Repeated< T >::count |
Definition at line 83 of file Repeated.h.
Referenced by empty(), end(), Repeated(), and size().
| Storage llvm::Repeated< T >::storage |
Definition at line 82 of file Repeated.h.
Referenced by begin(), end(), operator[](), Repeated(), and value().