GiNaC 1.8.7
Public Types | Private Types | Static Private Member Functions | List of all members
GiNaC::has_distance< T > Class Template Reference

SFINAE test for distance. More...

#include <utils_multi_iterator.h>

Public Types

enum  { value = sizeof(test<T>(0)) == sizeof(yes_type) }
 

Private Types

typedef char yes_type[1]
 
typedef char no_type[2]
 

Static Private Member Functions

template<typename C >
static yes_typetest (decltype(std::distance< C >))
 
template<typename C >
static no_typetest (...)
 

Detailed Description

template<typename T>
class GiNaC::has_distance< T >

SFINAE test for distance.

Definition at line 38 of file utils_multi_iterator.h.

Member Typedef Documentation

◆ yes_type

template<typename T >
typedef char GiNaC::has_distance< T >::yes_type[1]
private

Definition at line 40 of file utils_multi_iterator.h.

◆ no_type

template<typename T >
typedef char GiNaC::has_distance< T >::no_type[2]
private

Definition at line 41 of file utils_multi_iterator.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename T >
anonymous enum
Enumerator
value 

Definition at line 47 of file utils_multi_iterator.h.

Member Function Documentation

◆ test() [1/2]

template<typename T >
template<typename C >
static yes_type & GiNaC::has_distance< T >::test ( decltype(std::distance< C >)  )
staticprivate

◆ test() [2/2]

template<typename T >
template<typename C >
static no_type & GiNaC::has_distance< T >::test (   ...)
staticprivate

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

This page is part of the GiNaC developer's reference. It was generated automatically by doxygen. For an introduction, see the tutorial.