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