#include <Rodin/Utility/UnwrapReference.h>
template<class T>
UnwrapReference struct
Metafunction to unwrap std::reference_wrapper types.
| Template parameters | |
|---|---|
| T | The type to potentially unwrap. |
For non-reference_wrapper types, the result is T itself. For std::reference_wrapper<U>, the result is U&.
Example usage:
using Unwrapped1 = UnwrapReference<int>::Type; // int using Unwrapped2 = UnwrapReference<std::reference_wrapper<int>>::Type; // int&
Public types
- using Type = T
- Identity for non-reference_wrapper types.