fennec
Loading...
Searching...
No Matches
Type Transforms

Part of the fennec metaprogramming library. This header defines structures for copying types with different traits or rather, transform them, at compile time.

Syntax Description

add_pointer<TypeT>::type
add_pointer_t<TypeT>

adds a pointer to the provided type such that T becomes T*

Template Parameters
TResultant Type

remove_pointer<TypeT>::type
remove_pointer_t<TypeT>

removes a pointer from the provided type such that T* becomes T

Template Parameters
TResultant Type

add_reference<TypeT>::type
add_reference_t<TypeT>

adds a pointer to the provided type such that T becomes T&

Template Parameters
TResultant Type

remove_reference<TypeT>::type
remove_reference_t<TypeT>

removes references from the provided type such that T& and T&& become T

Template Parameters
TReference Type

add_const<TypeT>::type
add_const_t<TypeT>

adds const qualification to the provided type such that T becomes const T

Template Parameters
TReference Type

remove_const<TypeT>::type
remove_const_t<TypeT>

removes const qualification from the provided type such that const T becomes T

Template Parameters
TReference Type

add_volatile<TypeT>::type
add_volatile_t<TypeT>

removes references from the provided type such that T becomes volatile T

Template Parameters
TReference Type

remove_volatile<TypeT>::type
remove_volatile_t<TypeT>

removes references from the provided type such that volatile T becomes T

Template Parameters
TReference Type

add_cv<TypeT>::type
add_cv_t<TypeT>

removes references from the provided type such that T, const T, and volatile T become const volatile T

Template Parameters
TReference Type

remove_cv<TypeT>::type
remove_cv_t<TypeT>

removes const and volatile from the provided type such that const T, volatile T, and const volatile T become T

Template Parameters
TReference Type

add_cvr<TypeT>::type
add_cvr_t<TypeT>


remove_cvr<TypeT>::type
remove_cvr_t<TypeT>