tetl 0.1.0
Embedded Template Library
Loading...
Searching...
No Matches
remove_cvref.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: BSL-1.0
2// SPDX-FileCopyrightText: Copyright (C) 2019 Tobias Hienzsch
3
4#ifndef TETL_TYPE_TRAITS_REMOVE_CVREF_HPP
5#define TETL_TYPE_TRAITS_REMOVE_CVREF_HPP
6
7#include <etl/_type_traits/remove_cv.hpp>
8#include <etl/_type_traits/remove_reference.hpp>
9
10namespace etl {
11
12/// \brief If the type T is a reference type, provides the member typedef type
13/// which is the type referred to by T with its topmost cv-qualifiers removed.
14/// Otherwise type is T with its topmost cv-qualifiers removed.
15///
16/// \details The behavior of a program that adds specializations for
17/// remove_cvref is undefined.
18template <typename T>
20 using type = remove_cv_t<remove_reference_t<T>>;
21};
22
23template <typename T>
24using remove_cvref_t = remove_cv_t<remove_reference_t<T>>;
25
26} // namespace etl
27
28#endif // TETL_TYPE_TRAITS_REMOVE_CVREF_HPP
Definition adjacent_find.hpp:9
If the type T is a reference type, provides the member typedef type which is the type referred to by ...
Definition remove_cvref.hpp:19