@@ -39,17 +39,17 @@ struct StructField
3939
4040 // clang-format off
4141 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 ; }
4747 template <typename A = Accessor, typename ... Args> decltype (auto ) set(Args&&... args) const { return A::set (this ->m_struct , std::forward<Args>(args)...); }
4848 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> { }
5353 // clang-format on
5454};
5555
@@ -375,14 +375,14 @@ struct ClientParam
375375 // position when unpacking tuple might be slower than pattern matching
376376 // approach in the stack overflow solution
377377 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))>
379379 {
380380 callBuild<I + 1 >(std::forward<Args>(args)..., std::get<I>(m_client_param->m_values ));
381381 }
382382
383383 template <size_t I, typename Params, typename ParamList, typename ... Values>
384384 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))>
386386 {
387387 MaybeBuildField (std::integral_constant<bool , Accessor::in>(), ParamList (), invoke_context,
388388 Make<StructField, Accessor>(params), std::forward<Values>(values)...);
@@ -403,14 +403,14 @@ struct ClientParam
403403 }
404404
405405 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))>
407407 {
408408 callRead<I + 1 >(std::forward<Args>(args)..., std::get<I>(m_client_param->m_values ));
409409 }
410410
411411 template <int I, typename Results, typename ... Params, typename ... Values>
412412 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)>
414414 {
415415 MaybeReadField (std::integral_constant<bool , Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context,
416416 Make<StructField, Accessor>(results), ReadDestUpdate (values)...);
@@ -651,7 +651,7 @@ void clientInvoke(ProxyClient& proxy_client, const GetRequest& get_request, Fiel
651651// ! duplication and branching in generic code that forwards calls to functions.
652652template <typename Fn, typename Ret>
653653auto 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())>
655655{
656656 fn ();
657657 return ret ();
@@ -660,7 +660,7 @@ auto ReplaceVoid(Fn&& fn, Ret&& ret) ->
660660// ! Overload of above for non-void `fn()` case.
661661template <typename Fn, typename Ret>
662662auto 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())>
664664{
665665 return fn ();
666666}
0 commit comments