userver
C++ Async Framework
Loading...
Searching...
No Matches
void_t.hpp
Go to the documentation of this file.
1
#
pragma
once
2
3
/// @file userver/utils/void_t.hpp
4
/// @brief @copybrief utils::void_t
5
6
#
include
<
type_traits
>
7
8
USERVER_NAMESPACE_BEGIN
9
10
namespace
utils {
11
12
#
if
(
__cpp_lib_void_t
>=
201411
&&
!
defined
(
__clang__
)
)
||
defined
(
DOXYGEN
)
13
/// @brief std::void_t implementation with workarounds for compiler bugs
14
///
15
/// @ingroup userver_universal
16
template
<
typename
... T>
17
using
void_t = std::void_t<T...>;
18
#
else
19
20
template
<
typename
... T>
21
struct
make_void_t {
22
using
type =
void
;
23
};
24
template
<
typename
... T>
25
using
void_t =
typename
make_void_t<T...>::type;
26
27
#
endif
28
29
}
// namespace utils
30
31
USERVER_NAMESPACE_END
userver
utils
void_t.hpp
Generated on Wed May 15 2024 22:35:47 for userver by
Doxygen
1.10.0