Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::container::container_detail::is_constructible_impl< T, Args > Struct Template Reference

Code inspired by Mathias Gaunard's is_convertible.cpp found in the Boost mailing list http://boost.2283326.n4.nabble.com/type-traits-is-constructible-when-decltype-is-supported-td3575452.html Thanks Mathias! More...

#include <scoped_allocator.hpp>

Classes

struct  dummy
 
struct  no_type
 

Public Types

typedef char yes_type
 

Static Public Member Functions

template<class X >
static yes_type test (dummy< sizeof(X(boost::move_detail::declval< Args >()...))> *)
 
template<class X >
static no_type test (...)
 

Static Public Attributes

static const bool value = sizeof(test<T>(0)) == sizeof(yes_type)
 

Detailed Description

template<class T, class... Args>
struct boost::container::container_detail::is_constructible_impl< T, Args >

Code inspired by Mathias Gaunard's is_convertible.cpp found in the Boost mailing list http://boost.2283326.n4.nabble.com/type-traits-is-constructible-when-decltype-is-supported-td3575452.html Thanks Mathias!

Member Typedef Documentation

template<class T , class... Args>
typedef char boost::container::container_detail::is_constructible_impl< T, Args >::yes_type

Member Function Documentation

template<class T , class... Args>
template<class X >
static yes_type boost::container::container_detail::is_constructible_impl< T, Args >::test ( dummy< sizeof(X(boost::move_detail::declval< Args >()...))> *  )
static
template<class T , class... Args>
template<class X >
static no_type boost::container::container_detail::is_constructible_impl< T, Args >::test (   ...)
static

Member Data Documentation

template<class T , class... Args>
const bool boost::container::container_detail::is_constructible_impl< T, Args >::value = sizeof(test<T>(0)) == sizeof(yes_type)
static

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