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
concepts
Invocable.h
Go to the documentation of this file.
1
#pragma once
2
3
//#ifdef SCL_CPP17
4
#include <
scl/tools/meta/type_check.h
>
5
6
namespace
scl
{
7
namespace
concepts{
13
template
<
class
F,
class
... Args>
14
struct
Invocable
{
15
constexpr
operator
bool()
const
{
16
using namespace
scl::tools
;
17
static_assert(meta::is_invocable<F, Args...>(),
"Invocable<F, Args...>: Cannot invoke F w/ Args..."
);
18
return
true
;
19
}
20
};
21
}
22
}
23
//#endif
scl
Global namespace of the SCL.
Definition:
alias.hpp:3
scl::tools
General purpose tooling.
Definition:
iostream.hpp:4
scl::concepts::Invocable
Invocable concept, a type F is invocable with Args if meta::is_invocable<F, Args...>() is true.
Definition:
Invocable.h:14
type_check.h
Generated by
1.8.13