STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Macros | Enumerations | Functions | Variables
limits File Reference
#include <ymath.h>
#include <cfloat>
#include <climits>
#include <cmath>
#include <cwchar>
#include <xstddef>

Classes

struct  _Num_base
 
class  numeric_limits< _Ty >
 
class  numeric_limits< const _Ty >
 
class  numeric_limits< volatile _Ty >
 
class  numeric_limits< const volatile _Ty >
 
struct  _Num_int_base
 
struct  _Num_float_base
 
class  numeric_limits< char >
 
class  numeric_limits< wchar_t >
 
class  numeric_limits< bool >
 
class  numeric_limits< signed char >
 
class  numeric_limits< unsigned char >
 
class  numeric_limits< short >
 
class  numeric_limits< char16_t >
 
class  numeric_limits< int >
 
class  numeric_limits< unsigned int >
 
class  numeric_limits< long >
 
class  numeric_limits< unsigned long >
 
class  numeric_limits< char32_t >
 
class  numeric_limits< _LONGLONG >
 
class  numeric_limits< _ULONGLONG >
 
class  numeric_limits< float >
 
class  numeric_limits< double >
 
class  numeric_limits< long double >
 

Macros

#define _LIMITS_
 
#define _STCONS(ty, name, val)   static constexpr ty name = (ty)(val)
 
#define _FLT_MIN   FLT_MIN
 
#define _FLT_MAX   FLT_MAX
 
#define _FLT_EPSILON   FLT_EPSILON
 
#define _FLT_TRUE_MIN   FLT_TRUE_MIN
 
#define _DBL_MIN   DBL_MIN
 
#define _DBL_MAX   DBL_MAX
 
#define _DBL_EPSILON   DBL_EPSILON
 
#define _DBL_TRUE_MIN   DBL_TRUE_MIN
 
#define _LDBL_MIN   LDBL_MIN
 
#define _LDBL_MAX   LDBL_MAX
 
#define _LDBL_EPSILON   LDBL_EPSILON
 
#define _LDBL_TRUE_MIN   LDBL_TRUE_MIN
 
#define _STCONS(ty, name, val)   __declspec(selectany) constexpr ty _STCLASS::name
 
#define _STCLASS   _Num_base
 
#define _STCLASS   _Num_int_base
 
#define _STCLASS   _Num_float_base
 
#define _STCLASS   numeric_limits<char>
 
#define _STCLASS   numeric_limits<wchar_t>
 
#define _STCLASS   numeric_limits<bool>
 
#define _STCLASS   numeric_limits<signed char>
 
#define _STCLASS   numeric_limits<unsigned char>
 
#define _STCLASS   numeric_limits<short>
 
#define _STCLASS   numeric_limits<char16_t>
 
#define _STCLASS   numeric_limits<int>
 
#define _STCLASS   numeric_limits<unsigned int>
 
#define _STCLASS   numeric_limits<long>
 
#define _STCLASS   numeric_limits<unsigned long>
 
#define _STCLASS   numeric_limits<char32_t>
 
#define _STCLASS   numeric_limits<_LONGLONG>
 
#define _STCLASS   numeric_limits<_ULONGLONG>
 
#define _STCLASS   numeric_limits<float>
 
#define _STCLASS   numeric_limits<double>
 
#define _STCLASS   numeric_limits<long double>
 

Enumerations

enum  float_denorm_style { denorm_indeterminate = -1, denorm_absent = 0, denorm_present = 1 }
 
enum  float_round_style {
  round_indeterminate = -1, round_toward_zero = 0, round_to_nearest = 1, round_toward_infinity = 2,
  round_toward_neg_infinity = 3
}
 

Functions

 _STCONS (float_denorm_style, has_denorm, denorm_absent)
 
 _STCONS (bool, has_denorm_loss, false)
 
 _STCONS (bool, has_infinity, false)
 
 _STCONS (bool, has_quiet_NaN, false)
 
 _STCONS (bool, has_signaling_NaN, false)
 
 _STCONS (bool, is_bounded, false)
 
 _STCONS (bool, is_exact, false)
 
 _STCONS (bool, is_iec559, false)
 
 _STCONS (bool, is_integer, false)
 
 _STCONS (bool, is_modulo, false)
 
 _STCONS (bool, is_signed, false)
 
 _STCONS (bool, is_specialized, false)
 
 _STCONS (bool, tinyness_before, false)
 
 _STCONS (bool, traps, false)
 
 _STCONS (float_round_style, round_style, round_toward_zero)
 
 _STCONS (int, digits, 0)
 
 _STCONS (int, digits10, 0)
 
 _STCONS (int, max_digits10, 0)
 
 _STCONS (int, max_exponent, 0)
 
 _STCONS (int, max_exponent10, 0)
 
 _STCONS (int, min_exponent, 0)
 
 _STCONS (int, min_exponent10, 0)
 
 _STCONS (int, radix, 0)
 
 _STCONS (bool, is_bounded, true)
 
 _STCONS (bool, is_exact, true)
 
 _STCONS (bool, is_integer, true)
 
 _STCONS (bool, is_modulo, true)
 
 _STCONS (bool, is_specialized, true)
 
 _STCONS (int, radix, 2)
 
 _STCONS (float_denorm_style, has_denorm, denorm_present)
 
 _STCONS (bool, has_denorm_loss, true)
 
 _STCONS (bool, has_infinity, true)
 
 _STCONS (bool, has_quiet_NaN, true)
 
 _STCONS (bool, has_signaling_NaN, true)
 
 _STCONS (bool, is_iec559, true)
 
 _STCONS (bool, is_signed, true)
 
 _STCONS (bool, tinyness_before, true)
 
 _STCONS (float_round_style, round_style, round_to_nearest)
 
 _STCONS (int, radix, FLT_RADIX)
 
 _STCONS (bool, is_signed, CHAR_MIN!=0)
 
 _STCONS (int, digits, CHAR_BIT-(CHAR_MIN!=0?1:0))
 
 _STCONS (bool, is_signed, WCHAR_MIN!=0)
 
 _STCONS (int, digits, 1)
 
 _STCONS (int, digits, CHAR_BIT-1)
 
 _STCONS (int, digits10,(CHAR_BIT-1-1)*301L/1000)
 
 _STCONS (int, digits, CHAR_BIT)
 
 _STCONS (int, digits10,(CHAR_BIT-1)*301L/1000)
 
 _STCONS (int, digits, CHAR_BIT *sizeof(short)-1)
 
 _STCONS (int, digits, CHAR_BIT *sizeof(char16_t))
 
 _STCONS (int, digits, CHAR_BIT *sizeof(int)-1)
 
 _STCONS (int, digits, CHAR_BIT *sizeof(unsigned int))
 
 _STCONS (int, digits, CHAR_BIT *sizeof(long)-1)
 
 _STCONS (int, digits, CHAR_BIT *sizeof(unsigned long))
 
 _STCONS (int, digits, CHAR_BIT *sizeof(char32_t))
 
 _STCONS (int, digits, CHAR_BIT *sizeof(_LONGLONG)-1)
 
 _STCONS (int, digits, CHAR_BIT *sizeof(_ULONGLONG))
 
 _STCONS (int, digits, FLT_MANT_DIG)
 
 _STCONS (int, digits10, FLT_DIG)
 
 _STCONS (int, max_digits10, 2+FLT_MANT_DIG *301L/1000)
 
 _STCONS (int, max_exponent,(int) FLT_MAX_EXP)
 
 _STCONS (int, max_exponent10,(int) FLT_MAX_10_EXP)
 
 _STCONS (int, min_exponent,(int) FLT_MIN_EXP)
 
 _STCONS (int, min_exponent10,(int) FLT_MIN_10_EXP)
 
 _STCONS (int, digits, DBL_MANT_DIG)
 
 _STCONS (int, digits10, DBL_DIG)
 
 _STCONS (int, max_digits10, 2+DBL_MANT_DIG *301L/1000)
 
 _STCONS (int, digits, LDBL_MANT_DIG)
 
 _STCONS (int, digits10, LDBL_DIG)
 
 _STCONS (int, max_digits10, 2+LDBL_MANT_DIG *301L/1000)
 

Variables

 WCHAR_MIN = 0 ? 1 : 0))
 

Macro Definition Documentation

#define _DBL_EPSILON   DBL_EPSILON
#define _DBL_MAX   DBL_MAX
#define _DBL_MIN   DBL_MIN
#define _DBL_TRUE_MIN   DBL_TRUE_MIN
#define _FLT_EPSILON   FLT_EPSILON
#define _FLT_MAX   FLT_MAX
#define _FLT_MIN   FLT_MIN
#define _FLT_TRUE_MIN   FLT_TRUE_MIN
#define _LDBL_EPSILON   LDBL_EPSILON
#define _LDBL_MAX   LDBL_MAX
#define _LDBL_MIN   LDBL_MIN
#define _LDBL_TRUE_MIN   LDBL_TRUE_MIN
#define _LIMITS_
#define _STCLASS   _Num_base
#define _STCLASS   _Num_int_base
#define _STCLASS   _Num_float_base
#define _STCLASS   numeric_limits<char>
#define _STCLASS   numeric_limits<wchar_t>
#define _STCLASS   numeric_limits<bool>
#define _STCLASS   numeric_limits<signed char>
#define _STCLASS   numeric_limits<unsigned char>
#define _STCLASS   numeric_limits<short>
#define _STCLASS   numeric_limits<char16_t>
#define _STCLASS   numeric_limits<int>
#define _STCLASS   numeric_limits<unsigned int>
#define _STCLASS   numeric_limits<long>
#define _STCLASS   numeric_limits<unsigned long>
#define _STCLASS   numeric_limits<char32_t>
#define _STCLASS   numeric_limits<_LONGLONG>
#define _STCLASS   numeric_limits<_ULONGLONG>
#define _STCLASS   numeric_limits<float>
#define _STCLASS   numeric_limits<double>
#define _STCLASS   numeric_limits<long double>
#define _STCONS (   ty,
  name,
  val 
)    static constexpr ty name = (ty)(val)
#define _STCONS (   ty,
  name,
  val 
)    __declspec(selectany) constexpr ty _STCLASS::name

Enumeration Type Documentation

Enumerator
denorm_indeterminate 
denorm_absent 
denorm_present 
53  { // constants for different IEEE float denormalization styles
55  denorm_absent = 0,
56  denorm_present = 1}
Definition: limits:55
Definition: limits:54
Definition: limits:56
Enumerator
round_indeterminate 
round_toward_zero 
round_to_nearest 
round_toward_infinity 
round_toward_neg_infinity 
61  { // constants for different IEEE rounding styles
64  round_to_nearest = 1,
Definition: limits:65
Definition: limits:66
Definition: limits:62
Definition: limits:64
Definition: limits:63

Function Documentation

_STCONS ( float_denorm_style  ,
has_denorm  ,
denorm_absent   
)
_STCONS ( bool  ,
has_denorm_loss  ,
false   
)
_STCONS ( bool  ,
has_infinity  ,
false   
)
_STCONS ( bool  ,
has_quiet_NaN  ,
false   
)
_STCONS ( bool  ,
has_signaling_NaN  ,
false   
)
_STCONS ( bool  ,
is_bounded  ,
false   
)
_STCONS ( bool  ,
is_exact  ,
false   
)
_STCONS ( bool  ,
is_iec559  ,
false   
)
_STCONS ( bool  ,
is_integer  ,
false   
)
_STCONS ( bool  ,
is_modulo  ,
false   
)
_STCONS ( bool  ,
is_signed  ,
false   
)
_STCONS ( bool  ,
is_specialized  ,
false   
)
_STCONS ( bool  ,
tinyness_before  ,
false   
)
_STCONS ( bool  ,
traps  ,
false   
)
_STCONS ( float_round_style  ,
round_style  ,
round_toward_zero   
)
_STCONS ( int  ,
digits  ,
 
)
_STCONS ( int  ,
digits10  ,
 
)
_STCONS ( int  ,
max_digits10  ,
 
)
_STCONS ( int  ,
max_exponent  ,
 
)
_STCONS ( int  ,
max_exponent10  ,
 
)
_STCONS ( int  ,
min_exponent  ,
 
)
_STCONS ( int  ,
min_exponent10  ,
 
)
_STCONS ( int  ,
radix  ,
 
)
_STCONS ( bool  ,
is_bounded  ,
true   
)
_STCONS ( bool  ,
is_exact  ,
true   
)
_STCONS ( bool  ,
is_integer  ,
true   
)
_STCONS ( bool  ,
is_modulo  ,
true   
)
_STCONS ( bool  ,
is_specialized  ,
true   
)
_STCONS ( int  ,
radix  ,
 
)
_STCONS ( float_denorm_style  ,
has_denorm  ,
denorm_present   
)
_STCONS ( bool  ,
has_denorm_loss  ,
true   
)
_STCONS ( bool  ,
has_infinity  ,
true   
)
_STCONS ( bool  ,
has_quiet_NaN  ,
true   
)
_STCONS ( bool  ,
has_signaling_NaN  ,
true   
)
_STCONS ( bool  ,
is_iec559  ,
true   
)
_STCONS ( bool  ,
is_signed  ,
true   
)
_STCONS ( bool  ,
tinyness_before  ,
true   
)
_STCONS ( float_round_style  ,
round_style  ,
round_to_nearest   
)
_STCONS ( int  ,
radix  ,
FLT_RADIX   
)
_STCONS ( bool  ,
is_signed  ,
CHAR_MIN!  = 0 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT CHAR_MIN!=0?1:0 
)
_STCONS ( bool  ,
is_signed  ,
WCHAR_MIN!  = 0 
)
_STCONS ( int  ,
digits  ,
 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT 1 
)
_STCONS ( int  ,
digits10  ,
(CHAR_BIT-1-1)*301L/  1000 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT   
)
_STCONS ( int  ,
digits10  ,
(CHAR_BIT-1)*301L/  1000 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT *sizeof(short)-  1 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT sizeofchar16_t 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT *sizeof(int)-  1 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT sizeofunsigned int 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT *sizeof(long)-  1 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT sizeofunsigned long 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT sizeofchar32_t 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT *sizeof(_LONGLONG)-  1 
)
_STCONS ( int  ,
digits  ,
CHAR_BIT sizeof_ULONGLONG 
)
_STCONS ( int  ,
digits  ,
FLT_MANT_DIG   
)
_STCONS ( int  ,
digits10  ,
FLT_DIG   
)
_STCONS ( int  ,
max_digits10  ,
2+FLT_MANT_DIG *301L/  1000 
)
_STCONS ( int  ,
max_exponent  ,
(int)  FLT_MAX_EXP 
)
_STCONS ( int  ,
max_exponent10  ,
(int)  FLT_MAX_10_EXP 
)
_STCONS ( int  ,
min_exponent  ,
(int)  FLT_MIN_EXP 
)
_STCONS ( int  ,
min_exponent10  ,
(int)  FLT_MIN_10_EXP 
)
_STCONS ( int  ,
digits  ,
DBL_MANT_DIG   
)
_STCONS ( int  ,
digits10  ,
DBL_DIG   
)
_STCONS ( int  ,
max_digits10  ,
2+DBL_MANT_DIG *301L/  1000 
)
_STCONS ( int  ,
digits  ,
LDBL_MANT_DIG   
)
_STCONS ( int  ,
digits10  ,
LDBL_DIG   
)
_STCONS ( int  ,
max_digits10  ,
2+LDBL_MANT_DIG *301L/  1000 
)

Variable Documentation

WCHAR_MIN = 0 ? 1 : 0))