CNL
2.0.2 (development)
Compositional Numeric Library
is_wrapper.h
1
2
// Copyright John McFarlane 2019.
3
// Distributed under the Boost Software License, Version 1.0.
4
// (See accompanying file ../LICENSE_1_0.txt or copy at
5
// http://www.boost.org/LICENSE_1_0.txt)
6
7
#if !defined(CNL_IMPL_WRAPPER_IS_WRAPPER_H)
8
#define CNL_IMPL_WRAPPER_IS_WRAPPER_H
9
10
#include "../custom_operator/tag.h"
11
#include "declaration.h"
12
13
#include <type_traits>
14
16
namespace
cnl
{
17
namespace
_impl {
18
template
<
typename
T>
19
inline
constexpr
bool
is_wrapper =
false
;
20
21
template
<
typename
Rep, tag Tag>
22
inline
constexpr
auto
is_wrapper<_impl::wrapper<Rep, Tag>> =
true
;
23
24
template
<
typename
T>
25
concept any_wrapper = is_wrapper<T>;
26
}
27
}
28
29
#endif // CNL_IMPL_WRAPPER_IS_WRAPPER_H
cnl
compositional numeric library
Definition:
abort.h:15
cnl
_impl
wrapper
is_wrapper.h
Generated by
1.8.17