tetl 0.1.0
Embedded Template Library
Loading...
Searching...
No Matches
is_invocable_r.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: BSL-1.0
2// SPDX-FileCopyrightText: Copyright (C) 2019 Tobias Hienzsch
3
4#ifndef TETL_TYPE_TRAITS_IS_INVOCABLE_R_HPP
5#define TETL_TYPE_TRAITS_IS_INVOCABLE_R_HPP
6
7#include <etl/_type_traits/invoke_result.hpp>
8#include <etl/_type_traits/is_invocable.hpp>
9
10namespace etl {
11
12template <typename R, typename Fn, typename... ArgTypes>
13struct is_invocable_r : detail::is_invocable_impl<invoke_result<Fn, ArgTypes...>, R>::type { };
14
15template <typename R, typename Fn, typename... ArgTypes>
16inline constexpr auto is_invocable_r_v = is_invocable_r<R, Fn, ArgTypes...>::value;
17
18} // namespace etl
19
20#endif // TETL_TYPE_TRAITS_IS_INVOCABLE_R_HPP
Definition adjacent_find.hpp:9
constexpr auto is_invocable_r_v
Definition is_invocable_r.hpp:16
Deduces the return type of an INVOKE expression at compile time.
Definition invoke_result.hpp:72
Definition is_invocable_r.hpp:13