⚠️ This is the documentation for an old userver version. Click here to switch to the latest version.
userver
C++ Async Framework v2.0
Documentation
API Groups
Namespaces
Reference
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
w
y
Variables
k
n
r
u
w
Typedefs
c
d
h
m
n
o
p
s
t
u
v
Enumerations
a
b
c
d
f
h
i
l
o
p
r
s
t
u
v
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
~
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
~
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
Typedefs
Enumerations
Enumerator
Related Symbols
File List
File Members
All
e
i
l
r
t
u
Functions
Macros
e
i
l
r
t
u
Examples
Toggle main menu visibility
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
Concepts
Loading...
Searching...
No Matches
All results
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
Docs version:
v1.0
,
v2.0
,
trunk/develop
userver
utils
void_t.hpp
Generated on Wed May 15 2024 22:35:47 for userver by
Doxygen
1.10.0