19#ifndef MTCORE_ITER_HPP
20#define MTCORE_ITER_HPP
31 template<Addressable T>
33 using IterElem = std::add_pointer_t<typename T::Elem>;
50 template<Addressable T>
52 using IterElem = std::add_pointer_t<std::add_const_t<typename T::Elem>>;
69 template<Addressable T>
71 using IterElem = std::remove_const_t<typename T::Elem>;
ValIter< T > val(const T &r)
Generic value iterator that uses the operator[] and incrementing indexes to iterate over a collection...
ConstPtrIter< T > const_ptr(const T &r)
Generic constant pointer iterator that uses the operator[] and incrementing indexes to iterate over a...
PtrIter< T > ptr(T &r)
Generic pointer iterator that uses the operator[] and incrementing indexes to iterate over a collecti...
Generic iterator defaults built on common contracts Does not guarantee performance of iterators Actua...
Core library for C++ with Zig-related functionality.
Iterator that gives const pointers to elements of a collection.
std::add_pointer_t< std::add_const_t< typename T::Elem > > IterElem
Optional< IterElem > next()
Represents a value that may or may not exist (an "Optional" value) Similar concept to std::optional,...
Iterator that gives pointers to elements of a collection.
Optional< IterElem > next()
std::add_pointer_t< typename T::Elem > IterElem
Iterator that gives copies of elements of a collection.
Optional< IterElem > next()
std::remove_const_t< typename T::Elem > IterElem