"ScL Feature"
/
ScL Feature
0.0.1
C++20 composable proxy wrapper with pluggable executor strategy
Toggle main menu visibility
Loading...
Searching...
No Matches
wrapper.h
1
#pragma once
2
3
#include <scl/feature/type_traits/wrapper.h>
4
#include <scl/utility/concepts/reference.h>
5
6
namespace
scl::feature::concepts
7
{
19
template
<
typename
Type>
20
concept
wrapper
=
::scl::feature::is_wrapper_v<Type>
;
21
38
template
<
typename
Type>
39
concept
wrapper_reference
= ::scl::concepts::reference<Type> &&
wrapper<Type>
;
40
52
template
<
typename
Type>
53
concept
non_wrapper
= !
::scl::feature::is_wrapper_v<Type>
;
54
71
template
<
typename
Expected,
typename
Type>
72
concept
compatible_with
=
::scl::feature::is_compatible_with_v<Expected, Type>
;
73
91
template
<
typename
Expected,
typename
Type>
92
concept
compatible_with_part_of
=
::scl::feature::is_compatible_with_part_of_v<Expected, Type>
;
93
111
template
<
typename
Expected,
typename
Type>
112
concept
part_compatible_with
=
::scl::feature::is_part_compatible_with_v<Expected, Type>
;
113
124
template
<
typename
Target,
typename
Refer>
125
concept
convertible_from
=
::scl::feature::is_convertible_from_v<Target, Refer>
;
126
}
// namespace scl::feature::concepts
scl::feature::concepts::compatible_with_part_of
Satisfied when Type is compatible with a part of Expected.
Definition
wrapper.h:92
scl::feature::concepts::compatible_with
Satisfied when Type is compatible with Expected.
Definition
wrapper.h:72
scl::feature::concepts::convertible_from
Satisfied when Target is convertible from Refer directly or through any level of the wrapper chain.
Definition
wrapper.h:125
scl::feature::concepts::non_wrapper
Satisfied when T is not a wrapper specialization.
Definition
wrapper.h:53
scl::feature::concepts::part_compatible_with
Satisfied when a part of Expected is compatible with Type.
Definition
wrapper.h:112
scl::feature::concepts::wrapper_reference
Satisfied when Type is a reference to a wrapper specialization.
Definition
wrapper.h:39
scl::feature::concepts::wrapper
Satisfied when T is a wrapper specialization.
Definition
wrapper.h:20
scl::feature::is_convertible_from_v
constexpr bool is_convertible_from_v
Checks whether Target is convertible from Refer directly or through any level of the wrapper chain.
Definition
wrapper.h:211
scl::feature::is_part_compatible_with_v
constexpr bool is_part_compatible_with_v
Checks whether Test (a wrapper) recursively contains a value that is compatible with Expected (also a...
Definition
wrapper.h:150
scl::feature::is_compatible_with_v
constexpr bool is_compatible_with_v
Checks whether Test is compatible with (usable in place of) Expected.
Definition
wrapper.h:68
scl::feature::is_compatible_with_part_of_v
constexpr bool is_compatible_with_part_of_v
Checks whether Expected (a wrapper) recursively contains a value that is compatible with Test (also a...
Definition
wrapper.h:107
scl::feature::is_wrapper_v
constexpr bool is_wrapper_v
Checks whether Type is a wrapper specialization.
Definition
wrapper.h:32
scl::feature::concepts
C++20 concepts for ScL Feature types.
src
scl
feature
concepts
wrapper.h
Generated by
1.18.0