Support Class Library
A set of tools providing classes and utility
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