All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Static Public Attributes | Static Private Member Functions | List of all members
geo::vect::details::HasGetter< Vector > Struct Template Reference

#include <geo_vectors_utils.h>

Static Public Attributes

static constexpr bool X = TestX<Vector>(nullptr)
 
static constexpr bool Y = TestY<Vector>(nullptr)
 
static constexpr bool Z = TestZ<Vector>(nullptr)
 
static constexpr bool T = TestT<Vector>(nullptr)
 

Static Private Member Functions

template<typename Class >
static constexpr bool TestX (decltype(std::declval< Class >().X())*)
 
template<typename Class >
static constexpr bool TestX (...)
 
template<typename Class >
static constexpr bool TestY (decltype(std::declval< Class >().Y())*)
 
template<typename Class >
static constexpr bool TestY (...)
 
template<typename Class >
static constexpr bool TestZ (decltype(std::declval< Class >().Z())*)
 
template<typename Class >
static constexpr bool TestZ (...)
 
template<typename Class >
static constexpr bool TestT (decltype(std::declval< Class >().T())*)
 
template<typename Class >
static constexpr bool TestT (...)
 

Detailed Description

template<typename Vector>
struct geo::vect::details::HasGetter< Vector >

Definition at line 111 of file geo_vectors_utils.h.

Member Function Documentation

template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestT ( decltype(std::declval< Class >().T())*  )
inlinestaticprivate

Definition at line 127 of file geo_vectors_utils.h.

127 { return true; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestT (   ...)
inlinestaticprivate

Definition at line 129 of file geo_vectors_utils.h.

129 { return false; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestX ( decltype(std::declval< Class >().X())*  )
inlinestaticprivate

Definition at line 115 of file geo_vectors_utils.h.

115 { return true; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestX (   ...)
inlinestaticprivate

Definition at line 117 of file geo_vectors_utils.h.

117 { return false; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestY ( decltype(std::declval< Class >().Y())*  )
inlinestaticprivate

Definition at line 119 of file geo_vectors_utils.h.

119 { return true; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestY (   ...)
inlinestaticprivate

Definition at line 121 of file geo_vectors_utils.h.

121 { return false; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestZ ( decltype(std::declval< Class >().Z())*  )
inlinestaticprivate

Definition at line 123 of file geo_vectors_utils.h.

123 { return true; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestZ (   ...)
inlinestaticprivate

Definition at line 125 of file geo_vectors_utils.h.

125 { return false; }

Member Data Documentation

template<typename Vector >
constexpr bool geo::vect::details::HasGetter< Vector >::T = TestT<Vector>(nullptr)
static

Definition at line 135 of file geo_vectors_utils.h.

template<typename Vector >
constexpr bool geo::vect::details::HasGetter< Vector >::X = TestX<Vector>(nullptr)
static

Definition at line 132 of file geo_vectors_utils.h.

template<typename Vector >
constexpr bool geo::vect::details::HasGetter< Vector >::Y = TestY<Vector>(nullptr)
static

Definition at line 133 of file geo_vectors_utils.h.

template<typename Vector >
constexpr bool geo::vect::details::HasGetter< Vector >::Z = TestZ<Vector>(nullptr)
static

Definition at line 134 of file geo_vectors_utils.h.


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