proxygen
folly::ApplyInvoke Struct Reference

#include <ApplyTuple.h>

Inheritance diagram for folly::ApplyInvoke:
folly::detail::apply_tuple::adl::ApplyInvoke

Public Member Functions

template<typename F , typename T >
constexpr auto operator() (F &&f, T &&t) const noexcept(noexcept(invoke_(static_cast< F && >(f), static_cast< T && >(t), seq< T >{}))) -> decltype(invoke_(static_cast< F && >(f), static_cast< T && >(t), seq< T >
 

Additional Inherited Members

- Private Types inherited from folly::detail::apply_tuple::adl::ApplyInvoke
template<typename T >
using seq = index_sequence_for_tuple< std::remove_reference_t< T >>
 
- Static Private Member Functions inherited from folly::detail::apply_tuple::adl::ApplyInvoke
template<typename F , typename T , std::size_t... I>
static constexpr auto invoke_ (F &&f, T &&t, index_sequence< I... >) noexcept(is_nothrow_invocable< F &&, decltype(get< I >(std::declval< T >()))... >::value) -> invoke_result_t< F &&, decltype(get< I >(std::declval< T >()))... >
 

Detailed Description

Definition at line 67 of file ApplyTuple.h.

Member Function Documentation

template<typename F , typename T >
constexpr auto folly::ApplyInvoke::operator() ( F &&  f,
T &&  t 
) const -> decltype(invoke_(static_cast<F&&>(f), static_cast<T&&>(t), seq<T>
inlinenoexcept

Definition at line 70 of file ApplyTuple.h.

References folly::apply(), f, folly::detail::apply_tuple::adl::ApplyInvoke::invoke_(), folly::pushmi::detail::t, and folly::T.

71  {})))
72  -> decltype(invoke_(static_cast<F&&>(f), static_cast<T&&>(t), seq<T>{})) {
static constexpr auto invoke_(F &&f, T &&t, index_sequence< I... >) noexcept(is_nothrow_invocable< F &&, decltype(get< I >(std::declval< T >()))... >::value) -> invoke_result_t< F &&, decltype(get< I >(std::declval< T >()))... >
Definition: ApplyTuple.h:48
auto f
folly::std T

The documentation for this struct was generated from the following file: