Exiv2
Loading...
Searching...
No Matches
Exiv2::Slice< const container > Struct Template Reference

Specialization of slices for constant containers. More...

#include <slice.hpp>

Inheritance diagram for Exiv2::Slice< const container >:

Public Types

using iterator = typename container::iterator
 
using const_iterator = typename container::const_iterator
 
using value_type = typename std::remove_cv<typename container::value_type>::type
 
using iterator
 
using const_iterator
 
using value_type
 
- Public Types inherited from Exiv2::Internal::MutableSliceBase< Internal::ContainerStorage, container >
using iterator
 
using const_iterator
 
using value_type
 
- Public Types inherited from Exiv2::Internal::ConstSliceBase< Internal::ContainerStorage, container >
using iterator
 
using const_iterator
 
using value_type
 
- Public Types inherited from Exiv2::Internal::ConstSliceBase< Internal::ContainerStorage, const container >
using iterator
 
using const_iterator
 
using value_type
 

Public Member Functions

Slice subSlice (size_t begin, size_t end) const
 
Slice subSlice (size_t begin, size_t end)
 
Slice< const container > subSlice (size_t begin, size_t end) const
 
- Public Member Functions inherited from Exiv2::Internal::MutableSliceBase< Internal::ContainerStorage, container >
value_type & at (size_t index)
 
const value_type & at (size_t index) const
 
iterator begin () noexcept
 
iterator end () noexcept
 
- Public Member Functions inherited from Exiv2::Internal::ConstSliceBase< Internal::ContainerStorage, container >
 ConstSliceBase (container &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
 
- Public Member Functions inherited from Exiv2::Internal::SliceBase
 SliceBase (size_t begin, size_t end)
 
size_t size () const noexcept
 
- Public Member Functions inherited from Exiv2::Internal::ConstSliceBase< Internal::ContainerStorage, const container >
 ConstSliceBase (const container &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

- Protected Types inherited from Exiv2::Internal::MutableSliceBase< Internal::ContainerStorage, container >
using base_type
 
- Protected Member Functions inherited from Exiv2::Internal::MutableSliceBase< Internal::ContainerStorage, container >
ConstSliceBase< Internal::ContainerStorage, const container > to_const_base () const noexcept
 
slice_type subSlice (size_t begin, size_t end)
 
- Protected Member Functions inherited from Exiv2::Internal::SliceBase
void rangeCheck (size_t index) const
 
- Protected Attributes inherited from Exiv2::Internal::ConstSliceBase< Internal::ContainerStorage, container >
Internal::ContainerStorage< container > storage_
 
- Protected Attributes inherited from Exiv2::Internal::SliceBase
size_t begin_
 
size_t end_
 
- Protected Attributes inherited from Exiv2::Internal::ConstSliceBase< Internal::ContainerStorage, const container >
Internal::ContainerStorage< const container > storage_
 

Detailed Description

template<typename container>
struct Exiv2::Slice< const container >

Specialization of slices for constant containers.

Member Function Documentation

◆ subSlice() [1/2]

Slice Exiv2::Slice< container >::subSlice ( size_t begin,
size_t end )
inline

Construct a sub-slice of this slice with the given bounds. The bounds are evaluated with respect to the current slice.

Parameters
[in]beginFirst element in the new slice.
[in]endFirst element beyond the new slice.
Exceptions
std::out_of_rangewhen begin or end are invalid

◆ subSlice() [2/2]

Slice< const container > Exiv2::Slice< container >::subSlice ( size_t begin,
size_t end ) const
inlinenodiscard

Constructs a new constant subSlice. Behaves otherwise exactly like the non-const version.


The documentation for this struct was generated from the following file: