FreeBSD Manual Pages
std::incrementable(3) C++ Standard Libary std::incrementable(3) NAME std::incrementable - std::incrementable Synopsis Defined in header <iterator> template< class I > concept incrementable = std::regular<I> && std::weakly_incrementable<I> && (since C++20) requires(I i) { { i++ } -> std::same_as<I>; }; This concept specifies requirements on types that can be incremented with the pre- and post-increment operators, whose increment operations are equal- ity-preserving, and the type is std::equality_comparable. Unlike with std::weakly_incrementable, which only support single- pass algorithms, multi-pass one-directional algorithms can be used with types that model std::incrementable. Semantic requirements I models std::incrementable only if given any two incrementable ob- jects a and b of type I: * bool(a == b) implies bool(a++ == b), and * bool(a == b) implies bool(((void)a++, a) == ++b). Equality preservation Expressions declared in requires expressions of the standard library concepts are required to be equality-preserving (except where stated otherwise). See also weakly_incrementable specifies that a semiregular type can be incre- mented with pre- (C++20) and post-increment operators (concept) same_as specifies that a type is the same as another type (C++20) (concept) http://cppreference.com 2024.06.10 std::incrementable(3)
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::incrementable&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>
