4#ifndef TETL_TUPLE_APPLY_HPP
5#define TETL_TUPLE_APPLY_HPP
7#include <etl/_functional/invoke.hpp>
8#include <etl/_tuple/tuple.hpp>
9#include <etl/_tuple/tuple_size.hpp>
10#include <etl/_type_traits/remove_reference.hpp>
11#include <etl/_utility/forward.hpp>
12#include <etl/_utility/index_sequence.hpp>
16template <
typename F,
typename Tuple>
17constexpr auto apply(F&& f, Tuple&& t) ->
decltype(
auto)
19 return [&]<etl::size_t... I>(
etl::index_sequence<I...> ) ->
decltype(
auto) {
20 return etl::invoke(
etl::forward<F>(f),
etl::get<I>(
etl::forward<Tuple>(t))...);
21 }(
etl::make_index_sequence<
etl::tuple_size_v<
etl::remove_reference_t<Tuple>>>{});
Definition adjacent_find.hpp:9
constexpr auto apply(F &&f, Tuple &&t) -> decltype(auto)
Definition apply.hpp:17