6 #ifndef JLM_UTIL_ITERATORWRAPPER_HPP
7 #define JLM_UTIL_ITERATORWRAPPER_HPP
23 template<
typename T,
typename BaseIterator>
41 template<
typename T,
typename BaseIterator>
59 template<
typename T,
typename BaseIterator>
78 template<
typename T,
typename BaseIterator,
typename DereferenceFunc>
116 return !(other == *
this);
140 template<
typename T,
typename BaseIterator>
148 template<
typename T,
typename BaseIterator>
157 template<
typename T,
typename BaseIterator>
pointer operator->() const noexcept
std::ptrdiff_t difference_type
std::forward_iterator_tag iterator_category
reference operator*() const noexcept
bool operator!=(const IteratorWrapper &other) const noexcept
IteratorWrapper(BaseIterator it)
IteratorWrapper & operator++() noexcept
IteratorWrapper operator++(int) noexcept
bool operator==(const IteratorWrapper &other) const noexcept
T & operator()(const BaseIterator &it) const
T & operator()(const BaseIterator &it) const
T & operator()(const BaseIterator &it) const