Jamba C++ API  5.0.0
Cpp17.h File Reference
#include <type_traits>

Go to the source code of this file.

Classes

struct  _DETECTOR< _Default, _AlwaysVoid, _Op, _Args >
 
struct  _DETECTOR< _Default, void_t< _Op< _Args... > >, _Op, _Args... >
 
struct  nonesuch
 

Namespaces

 pongasoft
 
 pongasoft::Utils
 
 pongasoft::Utils::cpp17
 
 pongasoft::Utils::cpp17::experimental
 The code here is copied from <experimental/type_traits> because it is not implemented with Visual studio build tools 17.
 

Typedefs

template<class Default , template< class... > class _Op, class... _Args>
using detected_or = _DETECTOR< Default, void, _Op, _Args... >
 
template<class Default , template< class... > class _Op, class... _Args>
using detected_or_t = typename detected_or< Default, _Op, _Args... >::type
 
template<template< class... > class _Op, class... _Args>
using detected_t = typename _DETECTOR< nonesuch, void, _Op, _Args... >::type
 
template<template< class... > class _Op, class... _Args>
using is_detected = typename _DETECTOR< nonesuch, void, _Op, _Args... >::value_t
 
template<class To , template< class... > class _Op, class... _Args>
using is_detected_convertible = std::is_convertible< detected_t< _Op, _Args... >, To >
 
template<class Expected , template< class... > class _Op, class... _Args>
using is_detected_exact = std::is_same< Expected, detected_t< _Op, _Args... > >
 
template<class... >
using void_t = void
 

Variables

template<class To , template< class... > class _Op, class... _Args>
constexpr bool is_detected_convertible_v = is_detected_convertible<To, _Op, _Args...>::value
 
template<class Expected , template< class... > class _Op, class... _Args>
constexpr bool is_detected_exact_v = is_detected_exact<Expected, _Op, _Args...>::value
 
template<template< class... > class _Op, class... _Args>
constexpr bool is_detected_v = is_detected<_Op, _Args...>::value