Helios Engine
A modular ECS based data-oriented C++23 game engine framework
Loading...
Searching...
No Matches
helios::utils::IteratorLike Concept Reference

Concept for types that can be used as base iterators in adapters. More...

#include <functional_adapters.hpp>

Concept definition

template<typename T>
concept IteratorLike = requires(T iter, const T const_iter) {
typename std::iter_value_t<T>;
{
++iter
} -> std::same_as<std::add_lvalue_reference_t<std::remove_cvref_t<T>>>;
{ iter++ } -> std::same_as<std::remove_cvref_t<T>>;
{ *const_iter } -> std::convertible_to<std::iter_value_t<T>>;
{ const_iter == const_iter } -> std::convertible_to<bool>;
{ const_iter != const_iter } -> std::convertible_to<bool>;
}
Concept for types that can be used as base iterators in adapters.

Detailed Description

Concept for types that can be used as base iterators in adapters.

Template Parameters
TType to check

Definition at line 151 of file functional_adapters.hpp.