Provides various type traits and their shortcuts. More...
Classes | |
struct | seqan3::function_traits< std::function< return_t(args_t...)> > |
A traits class to provide a uniform interface to the properties of a function type. More... | |
struct | seqan3::is_constexpr_default_constructible< t > |
Whether a type std::is_default_constructible in constexpr -context. More... | |
struct | seqan3::is_constexpr_default_constructible< t > |
Whether a type std::is_default_constructible in constexpr -context (unary_type_trait specialisation). More... | |
struct | seqan3::remove_rvalue_reference< t > |
Return the input type with && removed, but lvalue references preserved. More... | |
interface | transformation_trait |
Concept for a transformation trait. More... | |
interface | unary_type_trait |
Concept for a unary traits type. More... | |
Macros | |
#define | SEQAN3_IS_CONSTEXPR(...) std::integral_constant<bool, __builtin_constant_p((__VA_ARGS__, 0))>::value |
Returns true if the expression passed to this macro can be evaluated at compile time, false otherwise. More... | |
#define | SEQAN3_IS_SAME(...) std::is_same_v<__VA_ARGS__> |
A macro that behaves like std::is_same_v, except that it doesn't need to instantiate the template on GCC and Clang. | |
Typedefs | |
template<typename t > | |
using | seqan3::remove_rvalue_reference_t = typename remove_rvalue_reference< t >::type |
Return the input type with && removed, but lvalue references preserved (transformation_trait shortcut). More... | |
Variables | |
template<typename t > | |
constexpr bool | is_constexpr_default_constructible_v = is_constexpr_default_constructible<t>::value |
Whether a type std::is_default_constructible in constexpr -context (unary_type_trait shortcut). More... | |
Provides various type traits and their shortcuts.
#define SEQAN3_IS_CONSTEXPR | ( | ... | ) | std::integral_constant<bool, __builtin_constant_p((__VA_ARGS__, 0))>::value |
Returns true if the expression passed to this macro can be evaluated at compile time, false otherwise.
using seqan3::remove_rvalue_reference_t = typedef typename remove_rvalue_reference<t>::type |
Return the input type with &&
removed, but lvalue references preserved (transformation_trait shortcut).
t | The type to operate on. |
|
related |
Whether a type std::is_default_constructible in constexpr
-context (unary_type_trait shortcut).
t | The type to operate on. |