forked from qt-creator/qt-creator
Use C++20 compatible std::invoke_result instead of std::result_of_t
Change-Id: I52ccd82f801af64de03d9076096755c52c1d8b37 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
@@ -253,7 +253,7 @@ template<template<typename> class C, // result container type
|
|||||||
typename SC, // input container type
|
typename SC, // input container type
|
||||||
typename F, // function type
|
typename F, // function type
|
||||||
typename Value = typename std::decay_t<SC>::value_type,
|
typename Value = typename std::decay_t<SC>::value_type,
|
||||||
typename Result = std::decay_t<std::result_of_t<F(Value &)>>,
|
typename Result = std::decay_t<typename std::invoke_result<F, Value&>::type>,
|
||||||
typename ResultContainer = C<Result>>
|
typename ResultContainer = C<Result>>
|
||||||
Q_REQUIRED_RESULT decltype(auto) transform(SC &&container, F function);
|
Q_REQUIRED_RESULT decltype(auto) transform(SC &&container, F function);
|
||||||
#ifdef Q_CC_CLANG
|
#ifdef Q_CC_CLANG
|
||||||
@@ -270,7 +270,7 @@ template<template<typename, typename> class C, // result container type
|
|||||||
typename SC, // input container type
|
typename SC, // input container type
|
||||||
typename F, // function type
|
typename F, // function type
|
||||||
typename Value = typename std::decay_t<SC>::value_type,
|
typename Value = typename std::decay_t<SC>::value_type,
|
||||||
typename Result = std::decay_t<std::result_of_t<F(Value &)>>,
|
typename Result = std::decay_t<typename std::invoke_result<F, Value&>::type>,
|
||||||
typename ResultContainer = C<Result, std::allocator<Result>>>
|
typename ResultContainer = C<Result, std::allocator<Result>>>
|
||||||
Q_REQUIRED_RESULT decltype(auto) transform(SC &&container, F function);
|
Q_REQUIRED_RESULT decltype(auto) transform(SC &&container, F function);
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user