|
JH-Toolkit v1.4.1
An engineering-oriented C++20 toolkit with duck-typed concepts, static design, async coroutines, and semantic containers — header-only, RTTI-free, and concurrency-friendly.
|
Concept that checks whether a type provides at least const (non-destructive) iteration. More...
#include <jh/conceptual/sequence.h>
Concept that checks whether a type provides at least const (non-destructive) iteration.
A type T satisfies jh::concepts::sequence if:
begin() and end() that can be called on a const T&. jh::input_iterator. begin() and end() are comparable for equality and inequality. The concept requires that iteration be non-destructive — traversing the sequence must not modify or consume its internal state.
The type must support at least const iteration (i.e. traversal through const T&), but may also provide mutable iteration (T&). In other words, a sequence represents any type that can be iterated safely multiple times without state consumption, regardless of whether its elements themselves are mutable.
| T | The candidate type to test for sequence behavior. |