template<typename
Value, size_t Extent = dynamicExtent>
class juce::Span< Value, Extent >
A non-owning view over contiguous objects stored in an Array or vector or other similar container.
This is a bit like std::span from C++20, but with a more limited interface.
Inherits juce::detail::NumBase< dynamicExtent >.
|
| template<size_t e = extent, std::enable_if_t< e==0||e==dynamicExtent, int > = 0> |
| constexpr | Span () |
| |
| template<typename It> |
| constexpr | Span (It it, size_t end) |
| |
| template<typename Range, std::enable_if_t< detail::isSpanCompatibleRange< Range, Value >, int > = 0> |
| constexpr | Span (Range &&range) |
| |
| template<typename OtherValue, size_t OtherExtent, std::enable_if_t<(Extent==dynamicExtent||Extent==OtherExtent) &&detail::isSpanConvertible< OtherValue, Value >, int > = 0> |
| constexpr | Span (const Span< OtherValue, OtherExtent > &other) noexcept |
| |
| constexpr | Span (const Span &)=default |
| |
| constexpr Span & | operator= (const Span &)=default |
| |
| constexpr | Span (Span &&) noexcept=default |
| |
| constexpr Span & | operator= (Span &&) noexcept=default |
| |
| constexpr size_t | getSizeInBytes () const |
| |
| constexpr Value * | begin () const |
| |
| constexpr Value * | end () const |
| |
| constexpr auto & | front () const |
| |
| constexpr auto & | back () const |
| |
| constexpr auto & | operator[] (size_t index) const |
| |
| constexpr Value * | data () const |
| |
| constexpr bool | empty () const |
| |