#include <type_traits.hpp>
Inheritance diagram for Arageli::type_traits< T >:
Public Types | |
typedef T | element_type |
Type of each element if T is composite type. | |
typedef auto_type_category_by_numeric_limits< T >::value_type | category_type |
Static Public Attributes | |
static const bool | is_specialized = numeric_limits::is_specialized |
static const bool | is_rational = false |
True iff T is fraction (but not necessary a rational number, for last see below). | |
static const bool | is_number = numeric_limits::is_specialized |
static const bool | is_integer_number = numeric_limits::is_integer |
static const bool | is_polynom = false |
static const bool | is_real_number = !numeric_limits::is_integer |
static const bool | is_rational_number = false |
static const bool | is_complex_number = false |
static const bool | is_ring = numeric_limits::is_integer |
static const bool | is_field |
static const bool | is_finite = equal_types<bool, T>::bvalue |
static const bool | is_additive_group = numeric_limits::is_signed |
static const bool | is_multiplicative_group |
static const bool | has_zero_divisor = false |
static const bool | is_integer_modulo_ring = equal_types<bool, T>::bvalue |
static const bool | is_matrix = false |
static const bool | is_vector = false |
static const bool | has_commutative_multiplication = true |
static const bool | has_commutative_addition = true |
static const bool | has_associative_multiplication = true |
static const bool | has_associative_addition = true |
static const bool | has_distributive_multiplication = true |
static const bool | has_distributive_addition = true |
static const bool | has_null = true |
static const bool | has_unit = true |
static const bool | has_opposite_unit = true |
static const bool | is_entire_ring |
static const bool | is_aggregate = false |
True iff type is composite type consists another elements. | |
static const category_type | category_value |
This default implementation only appropriate for types that have specialized std::numeric_limits template.
Definition at line 220 of file type_traits.hpp.
typedef auto_type_category_by_numeric_limits<T>::value_type Arageli::type_traits< T >::category_type |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 270 of file type_traits.hpp.
typedef T Arageli::type_traits< T >::element_type |
Type of each element if T is composite type.
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 269 of file type_traits.hpp.
const category_type Arageli::type_traits< T >::category_value [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 271 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_associative_addition = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 256 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_associative_multiplication = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 255 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_commutative_addition = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 254 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_commutative_multiplication = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 253 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_distributive_addition = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 258 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_distributive_multiplication = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 257 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_null = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 259 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_opposite_unit = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 261 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_unit = true [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 260 of file type_traits.hpp.
const bool Arageli::type_traits< T >::has_zero_divisor = false [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 249 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_additive_group = numeric_limits::is_signed [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 243 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_aggregate = false [static] |
True iff type is composite type consists another elements.
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 268 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_complex_number = false [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 235 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_entire_ring [static] |
Initial value:
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 263 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_field [static] |
Initial value:
!numeric_limits::is_integer || equal_types<bool, T>::bvalue
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 238 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_finite = equal_types<bool, T>::bvalue [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 242 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_integer_modulo_ring = equal_types<bool, T>::bvalue [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 250 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_integer_number = numeric_limits::is_integer [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 231 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_matrix = false [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 251 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_multiplicative_group [static] |
Initial value:
!numeric_limits::is_integer || equal_types<bool, T>::bvalue
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 245 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_number = numeric_limits::is_specialized [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 230 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_polynom = false [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 232 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_rational = false [static] |
True iff T is fraction (but not necessary a rational number, for last see below).
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 229 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_rational_number = false [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 234 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_real_number = !numeric_limits::is_integer [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 233 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_ring = numeric_limits::is_integer [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 236 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_specialized = numeric_limits::is_specialized [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 228 of file type_traits.hpp.
const bool Arageli::type_traits< T >::is_vector = false [static] |
Reimplemented from Arageli::type_traits_default< T >.
Definition at line 252 of file type_traits.hpp.