pupene  0.2.0
Classes | Typedefs
pupene::detect Namespace Reference

Classes

struct  is_map_impl
 
struct  is_map_impl< T, std::void_t< typename T::key_type, typename T::mapped_type > >
 
struct  is_pup_impl
 
struct  is_pup_impl< P, T, void_t< decltype(declval< P >().pup_impl(declval< T & >(), declval< const Meta & >()))> >
 

Typedefs

template<typename T >
using begin_member = decltype(declval< T >().begin())
 
template<typename T >
using end_member = decltype(declval< T >().end())
 
template<typename T >
using has_begin = is_detected< begin_member, void, T >
 
template<typename T >
using has_end = is_detected< end_member, void, T >
 
template<typename T >
using has_resize = is_detected< resize_member, void, T >
 
template<typename T >
using has_size = is_detected< size_member, void, T >
 
template<typename T >
using resize_member = decltype(declval< T >().resize(declval< uint32_t >()))
 
template<typename T >
using size_member = decltype(declval< T >().size())
 

Typedef Documentation

◆ begin_member

template<typename T >
using pupene::detect::begin_member = typedef decltype(declval<T>().begin())

Definition at line 37 of file traits.h.

◆ end_member

template<typename T >
using pupene::detect::end_member = typedef decltype(declval<T>().end())

Definition at line 42 of file traits.h.

◆ has_begin

template<typename T >
using pupene::detect::has_begin = typedef is_detected<begin_member, void, T>

Definition at line 39 of file traits.h.

◆ has_end

template<typename T >
using pupene::detect::has_end = typedef is_detected<end_member, void, T>

Definition at line 44 of file traits.h.

◆ has_resize

template<typename T >
using pupene::detect::has_resize = typedef is_detected<resize_member, void, T>

Definition at line 49 of file traits.h.

◆ has_size

template<typename T >
using pupene::detect::has_size = typedef is_detected<size_member, void, T>

Definition at line 54 of file traits.h.

◆ resize_member

template<typename T >
using pupene::detect::resize_member = typedef decltype(declval<T>().resize(declval<uint32_t>()))

Definition at line 47 of file traits.h.

◆ size_member

template<typename T >
using pupene::detect::size_member = typedef decltype(declval<T>().size())

Definition at line 52 of file traits.h.