1#ifndef PODIO_RELATIONRANGE_H
2#define PODIO_RELATIONRANGE_H
12template <
typename ReferenceType>
20 m_begin(
begin), m_end(
end), m_size(std::distance(m_begin, m_end)) {
37 return m_begin == m_end;
46 ReferenceType
at(
size_t i)
const {
52 throw std::out_of_range(
"index out of bounds for RelationRange");
typename std::vector< ReferenceType >::const_iterator ConstIteratorType
bool empty() const
convenience overload to check if the range is empty
ReferenceType operator[](size_t i) const
Indexed access.
ConstIteratorType end() const
end of the range (necessary for range-based for loop)
RelationRange(ConstIteratorType begin, ConstIteratorType end)
size_t size() const
convenience overload for size
ReferenceType at(size_t i) const
Indexed access with range check.
ConstIteratorType begin() const
begin of the range (necessary for range-based for loop)