9 template<
template<
typename...>
typename Template,
typename... Args>
10 concept CTADDeducible =
requires(Args&&... args) { Template(util::forward<Args>(args)...); };
12 struct DeduceCreateFunction {
13 template<
template<
typename...>
typename Template,
typename... Args>
14 requires(CTADDeducible<Template, Args...>)
15 constexpr auto operator()(InPlaceTemplate<Template>, Args&&... args)
const
16 ->
decltype(Template(util::forward<Args>(args)...));
18 template<
template<
typename...>
typename Template,
typename... Args>
19 requires(!CTADDeducible<Template, Args...>)
20 constexpr auto operator()(InPlaceTemplate<Template>, Args&&...)
const
29template<
template<
typename...>
typename Template,
typename... Args>
34template<
template<
typename...>
typename Template,
typename... Args>
Definition deduce_create.h:30
Definition any_storable.h:9
constexpr auto deduce_create
Definition deduce_create.h:25
auto declval() -> meta::AddRValueReference< T >
Definition declval.h:8
constexpr auto in_place_template
Definition in_place_template.h:8