proxygen
folly::array_detail Namespace Reference

Classes

struct  is_ref_wrapper
 
struct  is_ref_wrapper< std::reference_wrapper< T > >
 
struct  return_type_helper
 
struct  return_type_helper< void, TList... >
 

Typedefs

template<typename T >
using not_ref_wrapper = folly::Negation< is_ref_wrapper< typename std::decay< T >::type >>
 
template<typename D , typename... TList>
using return_type = std::array< typename return_type_helper< D, TList... >::type, sizeof...(TList)>
 

Functions

template<typename MakeItem , std::size_t... Index>
FOLLY_ALWAYS_INLINE FOLLY_ATTR_VISIBILITY_HIDDEN constexpr auto make_array_with (MakeItem const &make, index_sequence< Index... >)
 

Typedef Documentation

template<typename T >
using folly::array_detail::not_ref_wrapper = typedef folly::Negation<is_ref_wrapper<typename std::decay<T>::type>>

Definition at line 36 of file Array.h.

template<typename D , typename... TList>
using folly::array_detail::return_type = typedef std:: array<typename return_type_helper<D, TList...>::type, sizeof...(TList)>

Definition at line 52 of file Array.h.

Function Documentation

template<typename MakeItem , std::size_t... Index>
FOLLY_ALWAYS_INLINE FOLLY_ATTR_VISIBILITY_HIDDEN constexpr auto folly::array_detail::make_array_with ( MakeItem const &  make,
index_sequence< Index... >   
)

Definition at line 64 of file Array.h.

Referenced by folly::make_array_with(), and TEST().

66  {
67  return std::array<decltype(make(0)), sizeof...(Index)>{{make(Index)...}};
68 }