Support Class Library
A set of tools providing classes and utility
Main Page
Related Pages
+
Namespaces
Namespace List
+
Namespace Members
+
All
_
a
c
d
e
f
h
i
l
m
n
o
p
r
s
t
u
v
w
+
Functions
_
a
c
d
e
f
h
i
l
m
n
o
p
r
s
t
u
w
Variables
+
Typedefs
a
c
d
e
f
h
i
l
m
n
r
s
t
u
v
+
Classes
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
~
+
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
~
+
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
+
Typedefs
a
c
d
e
f
g
i
k
l
m
n
o
p
q
r
s
t
v
Related Functions
+
Files
File List
+
File Members
+
All
a
c
d
m
o
r
s
t
v
Functions
+
Macros
a
c
d
m
r
s
t
v
Examples
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Friends
Macros
Pages
include
scl
tools
meta
exists.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <type_traits>
4
#include <
scl/tools/meta/void_t.h
>
5
6
namespace
scl
{
7
namespace
tools{
8
namespace
meta{
9
namespace
details{
10
template
<
class
T,
class
=
void
>
11
struct
__exists
: std::false_type{};
12
13
template
<
class
T>
14
struct
__exists
<T,
void_t
<T>> : std::true_type{};
15
}
16
22
template
<
class
T>
23
inline
constexpr
bool
exists
(){
24
return
details::__exists<T>::value
;
25
}
26
}
27
}
28
}
scl::tools::meta::void_t
void void_t
The must have.
Definition:
void_t.h:10
scl
Global namespace of the SCL.
Definition:
alias.hpp:3
scl::tools::meta::exists
constexpr bool exists()
Determines whether or not the given type is well-formed.
Definition:
exists.h:23
scl::tools::meta::details::__exists
Definition:
exists.h:11
void_t.h
Generated by
1.8.13