Sequoia
Loading...
Searching...
No Matches
Concepts
Concepts.hpp File Reference

Concepts which are sufficiently general to appear in the sequoia namespace. More...

#include "sequoia/Core/Meta/TypeTraits.hpp"
#include <utility>
#include <functional>
#include <concepts>

Go to the source code of this file.

Concepts

concept  sequoia::invocable_r
 Supplements std::invocable.
 
concept  sequoia::regular_invocable_r
 Supplements std::regular_invocable.
 
concept  sequoia::movable_comparable
 Building block for concepts related to std::regular but without the requirement of default constructibility.
 
concept  sequoia::pseudoregular
 Similar to std::regular but relaxes the requirement of default initializability.
 
concept  sequoia::moveonly
 The move-only version of sequoia::pseudoregular.
 
concept  sequoia::alloc
 A concept for allocators.
 
concept  sequoia::scoped_alloc
 A concept for scoped allocators.
 
concept  sequoia::serializable_to
 A concept which is realized by a T const& which may be serialized to a Stream&.
 
concept  sequoia::deserializable_from
 A concept which is realized by a Stream& which may be deserialized to a T&.
 
concept  sequoia::initializable_from
 A concept similar to std::constructible_from, but which considers braced-init.
 
concept  sequoia::arithmetic
 \brieft A concept for arithmetic types
 
concept  sequoia::faithful_range
 Similar to std::range but excludes the case where dereferencing yields the same type as the range.
 
concept  sequoia::deep_equality_comparable
 Concept to work around the fact that currently the stl typically underconstrains operator==.
 

Detailed Description

Concepts which are sufficiently general to appear in the sequoia namespace.