![]() |
Exiv2
|
#include <slice.hpp>
Public Types | |
using | iterator |
using | const_iterator |
using | value_type |
![]() | |
using | iterator = typename ConstSliceBase<storage_type, data_type>::iterator |
using | const_iterator = typename ConstSliceBase<storage_type, data_type>::const_iterator |
using | value_type = typename ConstSliceBase<storage_type, data_type>::value_type |
![]() | |
using | iterator = typename storage_type<data_type>::iterator |
using | const_iterator = typename storage_type<data_type>::const_iterator |
using | value_type = typename storage_type<data_type>::value_type |
![]() | |
using | iterator |
using | const_iterator |
using | value_type |
![]() | |
using | iterator |
using | const_iterator |
using | value_type |
Public Member Functions | |
Slice (T *ptr, size_t begin, size_t end) | |
Slice< T * > | subSlice (size_t begin, size_t end) |
Slice< const T * > | subSlice (size_t begin, size_t end) const |
Slice | subSlice (size_t begin, size_t end) |
Slice< const T * > | subSlice (size_t begin, size_t end) const |
![]() | |
value_type & | at (size_t index) |
const value_type & | at (size_t index) const |
iterator | begin () noexcept |
iterator | end () noexcept |
![]() | |
ConstSliceBase (data_type &data, size_t begin, size_t end) | |
const value_type & | at (size_t index) const |
const_iterator | cbegin () const noexcept |
const_iterator | cend () const noexcept |
template<typename slice_type> | |
slice_type | subSlice (size_t begin, size_t end) const |
![]() | |
SliceBase (size_t begin, size_t end) | |
size_t | size () const noexcept |
![]() | |
value_type & | at (size_t index) |
const value_type & | at (size_t index) const |
iterator | begin () noexcept |
iterator | end () noexcept |
![]() | |
ConstSliceBase (T *&data, size_t begin, size_t end) | |
const value_type & | at (size_t index) const |
const_iterator | cbegin () const noexcept |
const_iterator | cend () const noexcept |
slice_type | subSlice (size_t begin, size_t end) const |
Additional Inherited Members | |
![]() | |
using | base_type = ConstSliceBase<storage_type, data_type> |
![]() | |
using | base_type |
![]() | |
ConstSliceBase< storage_type, const data_type > | to_const_base () const noexcept |
template<typename slice_type> | |
slice_type | subSlice (size_t begin, size_t end) |
![]() | |
void | rangeCheck (size_t index) const |
![]() | |
ConstSliceBase< Internal::PtrSliceStorage, const T * > | to_const_base () const noexcept |
slice_type | subSlice (size_t begin, size_t end) |
![]() | |
storage_type< data_type > | storage_ |
![]() | |
size_t | begin_ |
size_t | end_ |
![]() | |
Internal::PtrSliceStorage< T * > | storage_ |
Specialization of slices for (mutable) C-arrays.
|
inline |
Construct a sub-slice of this slice with the given bounds. The bounds are evaluated with respect to the current slice.
[in] | begin | First element in the new slice. |
[in] | end | First element beyond the new slice. |
std::out_of_range | when begin or end are invalid |
|
inlinenodiscard |
Constructs a new constant subSlice. Behaves otherwise exactly like the non-const version.