Contains type traits and meta-programming features for compile-time evaluation.
Types
| Name | Description |
has_builder_t | Trait that is evaluated, if a class does not have an builder member type defined. |
is_explicitly_constructible_t | Evaluates to either true or false, if T can be constructed using the provided arguments, whilst not being able to be converted from TArg. |
is_implicitly_constructible_t | Evaluates to either true or false, if T can be constructed using the provided arguments and at the same time can also be converted from TArg. |
Variables
| Name | Description |
has_builder_v | Evaluates to either true or false, if T contains an builder member definition. |
is_explicitly_constructible_v | Evalues to true or false, depending if T contains an explicit constructor that takes TArg and TArgs as arguments. |
is_implicitly_constructible_v | Evalues to true or false, depending if T contains an implicit constructor that takes TArg and TArgs as arguments. |
Concepts
| Name | Description |
are_same | Checks if a set of types are all equal to the type T. |
has_builder | Checks if a type contains a builder. |
implements | Checks if a type TDerived is derived from another type TBase and is non-abstract. |
is_explicitly_constructible | Checks if a type can be constructed using the provided arguments, whilst not being able to be converted from TArg. |
is_implicitly_constructible | Checks if a type can be constructed using the provided arguments and at the same time can also be converted from TArg. |