4.6.0
Freundlich's C++ toolkit
|
Used to create strong typedefs.
T | The underlying type to be wrapped. |
Tag | Some unique type. |
A strong typedef is a wrapper around a type. It has an explicit constructor and a get member function.
Public Types | |
using | value_type = T |
A type that represents the data stored in the strong typedef. | |
using | tag_type = Tag |
typedef for the Tag template parameter | |
Public Member Functions | |
constexpr | strong_typedef (T const &) noexcept(std::is_nothrow_copy_constructible_v< T >) |
Constructs a strong typedef by copying. | |
constexpr | strong_typedef (T &&) noexcept(std::is_nothrow_move_constructible_v< T >) |
Constructs a strong typedef by moving. | |
strong_typedef (fcppt::no_init const &) | |
Creates an uninitialized strong typedef. | |
constexpr T & | get () |
Return the strong typedef's value. | |
constexpr T const & | get () const |
Return the strong typedef's value. | |
using fcppt::strong_typedef< T, Tag >::tag_type = Tag |
typedef for the Tag
template parameter
using fcppt::strong_typedef< T, Tag >::value_type = T |
A type that represents the data stored in the strong typedef.
|
explicitconstexprnoexcept |
Constructs a strong typedef by copying.
|
explicitconstexprnoexcept |
Constructs a strong typedef by moving.
|
explicit |
Creates an uninitialized strong typedef.
|
nodiscardconstexpr |
Return the strong typedef's value.
|
nodiscardconstexpr |
Return the strong typedef's value.