@@ -39,17 +39,17 @@ struct StructField
39
39
40
40
// clang-format off
41
41
template <typename A = Accessor> auto get () const -> decltype(A::get(this ->m_struct)) { return A::get (this ->m_struct ); }
42
- template <typename A = Accessor> auto has () const -> typename std::enable_if <A::optional, bool>::type { return A::getHas (m_struct); }
43
- template <typename A = Accessor> auto has () const -> typename std::enable_if <!A::optional && A::boxed, bool>::type { return A::has (m_struct); }
44
- template <typename A = Accessor> auto has () const -> typename std::enable_if <!A::optional && !A::boxed, bool>::type { return true ; }
45
- template <typename A = Accessor> auto want () const -> typename std::enable_if <A::requested, bool>::type { return A::getWant (m_struct); }
46
- template <typename A = Accessor> auto want () const -> typename std::enable_if <!A::requested, bool>::type { return true ; }
42
+ template <typename A = Accessor> auto has () const -> std::enable_if_t <A::optional, bool> { return A::getHas (m_struct); }
43
+ template <typename A = Accessor> auto has () const -> std::enable_if_t <!A::optional && A::boxed, bool> { return A::has (m_struct); }
44
+ template <typename A = Accessor> auto has () const -> std::enable_if_t <!A::optional && !A::boxed, bool> { return true ; }
45
+ template <typename A = Accessor> auto want () const -> std::enable_if_t <A::requested, bool> { return A::getWant (m_struct); }
46
+ template <typename A = Accessor> auto want () const -> std::enable_if_t <!A::requested, bool> { return true ; }
47
47
template <typename A = Accessor, typename ... Args> decltype (auto ) set(Args&&... args) const { return A::set (this ->m_struct , std::forward<Args>(args)...); }
48
48
template <typename A = Accessor, typename ... Args> decltype (auto ) init(Args&&... args) const { return A::init (this ->m_struct , std::forward<Args>(args)...); }
49
- template <typename A = Accessor> auto setHas () const -> typename std::enable_if <A::optional>::type { return A::setHas (m_struct); }
50
- template <typename A = Accessor> auto setHas () const -> typename std::enable_if <!A::optional>::type { }
51
- template <typename A = Accessor> auto setWant () const -> typename std::enable_if <A::requested>::type { return A::setWant (m_struct); }
52
- template <typename A = Accessor> auto setWant () const -> typename std::enable_if <!A::requested>::type { }
49
+ template <typename A = Accessor> auto setHas () const -> std::enable_if_t <A::optional> { return A::setHas (m_struct); }
50
+ template <typename A = Accessor> auto setHas () const -> std::enable_if_t <!A::optional> { }
51
+ template <typename A = Accessor> auto setWant () const -> std::enable_if_t <A::requested> { return A::setWant (m_struct); }
52
+ template <typename A = Accessor> auto setWant () const -> std::enable_if_t <!A::requested> { }
53
53
// clang-format on
54
54
};
55
55
@@ -375,14 +375,14 @@ struct ClientParam
375
375
// position when unpacking tuple might be slower than pattern matching
376
376
// approach in the stack overflow solution
377
377
template <size_t I, typename ... Args>
378
- auto callBuild (Args&&... args) -> typename std::enable_if <(I < sizeof ...(Types))>::type
378
+ auto callBuild (Args&&... args) -> std::enable_if_t <(I < sizeof ...(Types))>
379
379
{
380
380
callBuild<I + 1 >(std::forward<Args>(args)..., std::get<I>(m_client_param->m_values ));
381
381
}
382
382
383
383
template <size_t I, typename Params, typename ParamList, typename ... Values>
384
384
auto callBuild (ClientInvokeContext& invoke_context, Params& params, ParamList, Values&&... values) ->
385
- typename std::enable_if <(I == sizeof ...(Types))>::type
385
+ std::enable_if_t <(I == sizeof ...(Types))>
386
386
{
387
387
MaybeBuildField (std::integral_constant<bool , Accessor::in>(), ParamList (), invoke_context,
388
388
Make<StructField, Accessor>(params), std::forward<Values>(values)...);
@@ -403,14 +403,14 @@ struct ClientParam
403
403
}
404
404
405
405
template <int I, typename ... Args>
406
- auto callRead (Args&&... args) -> typename std::enable_if <(I < sizeof ...(Types))>::type
406
+ auto callRead (Args&&... args) -> std::enable_if_t <(I < sizeof ...(Types))>
407
407
{
408
408
callRead<I + 1 >(std::forward<Args>(args)..., std::get<I>(m_client_param->m_values ));
409
409
}
410
410
411
411
template <int I, typename Results, typename ... Params, typename ... Values>
412
412
auto callRead (ClientInvokeContext& invoke_context, Results& results, TypeList<Params...>, Values&&... values)
413
- -> typename std::enable_if <I == sizeof...(Types)>::type
413
+ -> std::enable_if_t <I == sizeof...(Types)>
414
414
{
415
415
MaybeReadField (std::integral_constant<bool , Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context,
416
416
Make<StructField, Accessor>(results), ReadDestUpdate (values)...);
@@ -651,7 +651,7 @@ void clientInvoke(ProxyClient& proxy_client, const GetRequest& get_request, Fiel
651
651
// ! duplication and branching in generic code that forwards calls to functions.
652
652
template <typename Fn, typename Ret>
653
653
auto ReplaceVoid (Fn&& fn, Ret&& ret) ->
654
- typename std::enable_if <std::is_same <void, decltype(fn())>::value , decltype(ret())>::type
654
+ std::enable_if_t <std::is_same_v <void, decltype(fn())>, decltype(ret())>
655
655
{
656
656
fn ();
657
657
return ret ();
@@ -660,7 +660,7 @@ auto ReplaceVoid(Fn&& fn, Ret&& ret) ->
660
660
// ! Overload of above for non-void `fn()` case.
661
661
template <typename Fn, typename Ret>
662
662
auto ReplaceVoid (Fn&& fn, Ret&& ret) ->
663
- typename std::enable_if <!std::is_same <void, decltype(fn())>::value , decltype(fn())>::type
663
+ std::enable_if_t <!std::is_same_v <void, decltype(fn())>, decltype(fn())>
664
664
{
665
665
return fn ();
666
666
}
0 commit comments