versatile-mcmc  0.1.7
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
vmcmc::is_container< T > Struct Template Reference

Typetrait checking for STL like container structure. More...

#include <typetraits.hpp>

Public Types

using test_type = typename std::remove_const< T >::type
 

Static Public Member Functions

template<typename A >
static constexpr bool test (A *pt, const A *cpt=nullptr, decltype(pt->begin())*=nullptr, decltype(pt->end())*=nullptr, decltype(cpt->begin())*=nullptr, decltype(cpt->end())*=nullptr, decltype(pt->size())*=nullptr, typename A::iterator *pi=nullptr, typename A::const_iterator *pci=nullptr, typename A::value_type *=nullptr)
 
template<typename A >
static constexpr bool test (...)
 

Static Public Attributes

static constexpr bool value = test<test_type>(nullptr)
 

Detailed Description

template<typename T>
struct vmcmc::is_container< T >

Typetrait checking for STL like container structure.

Typetrait checking whether the passed template argument denotes an STL like container. In that case, the static ::value member variable evaluates to true. Inspired by http://stackoverflow.com/a/16316640/6908762.


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