Enhanced C#
Language of your choice: library documentation

Documentation moved to ecsharp.net

GitHub doesn't support HTTP redirects, so you'll be redirected in 3 seconds.

 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events Pages
Properties | Public Member Functions | List of all members
Loyc.Math.INumTraits< T > Interface Template Reference

This interface provides information about a numeric type T. More...


Source file:
Inheritance diagram for Loyc.Math.INumTraits< T >:
Loyc.Math.IZeroProvider< T > Loyc.Math.IOneProvider< T > Loyc.Math.IComplexMath< T > Loyc.Math.IMath< T > Loyc.Math.ISignedMath< T > Loyc.Math.IUIntMath< T > Loyc.Math.IIntMath< T > Loyc.Math.IRationalMath< T > Loyc.Math.MathU Loyc.Math.MathU16 Loyc.Math.MathU8 Loyc.Math.MathUL Loyc.Math.MathI Loyc.Math.MathI16 Loyc.Math.MathI8 Loyc.Math.MathL Loyc.Math.IFloatMath< T > Loyc.Math.MathF16 Loyc.Math.MathF23 Loyc.Math.MathF8 Loyc.Math.MathFL16 Loyc.Math.MathFL32

Remarks

This interface provides information about a numeric type T.

Template Parameters
TA numeric type

Properties

MinValue [get]
 Minimum value of this type above negative infinity. More...
 
MaxValue [get]
 Maximum value of this type below infinity. More...
 
Epsilon [get]
 Smallest representable positive value of T (1 for integer types). More...
 
PositiveInfinity [get]
 Returns positive infinity, or MaxValue for types that cannot represent infinity. More...
 
NegativeInfinity [get]
 Returns negative infinity, or throws NotSupportedException if T is unsigned. More...
 
NaN [get]
 Not-a-number or null representation for this type. More...
 
bool IsSigned [get]
 Returns true if T can represent negative values. More...
 
bool IsFloatingPoint [get]
 Returns true if T is floating-point, meaning that it can represent very large and very small numbers, despite possibly limited precision. Returns false for fixed-point and integer-rational types. More...
 
bool IsInteger [get]
 Returns true if the type represents only whole numbers. More...
 
bool IsOrdered [get]
 Returns true for "normal" numbers, false for ones that aren't necessarily comparable (notably complex numbers). More...
 
int SignificantBits [get]
 Returns the normal maximum number of significant (mantissa) bits for this type (not counting the sign bit), or int.MaxValue for unlimited-size types. More...
 
int MaxIntPowerOf2 [get]
 Returns the maximum power-of-two-minus-one that can be represented by this type, e.g. for Int32 it's 31, and for UInt32 it's 32. More...
 
ulong MaxInt [get]
 Returns the maximum integer that this type can represent. More...
 
long MinInt [get]
 Returns the minimum integer that this type can represent. More...
 
- Properties inherited from Loyc.Math.IZeroProvider< T >
Zero [get]
 Returns the "zero" or additive identity of this type. More...
 
- Properties inherited from Loyc.Math.IOneProvider< T >
One [get]
 Returns the "one" or identity value of this type. More...
 

Public Member Functions

bool IsInfinity (T value)
 Returns true if the given value is infinite. More...
 
bool IsNaN (T value)
 Returns true if the given value is not a number (can only be true for floats). More...
 
Floor (T value)
 Gets the closest integer equal to or lower than the specified number. More...
 
Ceiling (T value)
 Gets the closest integer equal to or higher than the specified number. More...
 

Member Function Documentation

T Loyc.Math.INumTraits< T >.Ceiling ( value)
T Loyc.Math.INumTraits< T >.Floor ( value)
bool Loyc.Math.INumTraits< T >.IsInfinity ( value)

Returns true if the given value is infinite.

Types that do not have an infinity value always return false from this method.

Implemented in Loyc.Math.MathFL32, Loyc.Math.MathFL16, Loyc.Math.MathF23, Loyc.Math.MathF16, Loyc.Math.MathF8, Loyc.Math.MathD, Loyc.Math.MathF, Loyc.Math.MathUL, Loyc.Math.MathL, Loyc.Math.MathU, Loyc.Math.MathI, Loyc.Math.MathU16, Loyc.Math.MathI16, Loyc.Math.MathU8, and Loyc.Math.MathI8.

bool Loyc.Math.INumTraits< T >.IsNaN ( value)

Property Documentation

T Loyc.Math.INumTraits< T >.Epsilon
get

Smallest representable positive value of T (1 for integer types).

bool Loyc.Math.INumTraits< T >.IsFloatingPoint
get

Returns true if T is floating-point, meaning that it can represent very large and very small numbers, despite possibly limited precision. Returns false for fixed-point and integer-rational types.

bool Loyc.Math.INumTraits< T >.IsInteger
get

Returns true if the type represents only whole numbers.

bool Loyc.Math.INumTraits< T >.IsOrdered
get

Returns true for "normal" numbers, false for ones that aren't necessarily comparable (notably complex numbers).

bool Loyc.Math.INumTraits< T >.IsSigned
get

Returns true if T can represent negative values.

ulong Loyc.Math.INumTraits< T >.MaxInt
get

Returns the maximum integer that this type can represent.

If the maximum integer exceeds ulong.MaxValue, this returns ulong.MaxValue.

int Loyc.Math.INumTraits< T >.MaxIntPowerOf2
get

Returns the maximum power-of-two-minus-one that can be represented by this type, e.g. for Int32 it's 31, and for UInt32 it's 32.

T Loyc.Math.INumTraits< T >.MaxValue
get

Maximum value of this type below infinity.

long Loyc.Math.INumTraits< T >.MinInt
get

Returns the minimum integer that this type can represent.

If the minimum is less than long.MinValue, this returns long.MinValue.

T Loyc.Math.INumTraits< T >.MinValue
get

Minimum value of this type above negative infinity.

T Loyc.Math.INumTraits< T >.NaN
get

Not-a-number or null representation for this type.

Exceptions
NotSupportedExceptionThere is no null or NaN value for type T.
T Loyc.Math.INumTraits< T >.NegativeInfinity
get

Returns negative infinity, or throws NotSupportedException if T is unsigned.

Exceptions
NotSupportedExceptionT is unsigned.
T Loyc.Math.INumTraits< T >.PositiveInfinity
get

Returns positive infinity, or MaxValue for types that cannot represent infinity.

int Loyc.Math.INumTraits< T >.SignificantBits
get

Returns the normal maximum number of significant (mantissa) bits for this type (not counting the sign bit), or int.MaxValue for unlimited-size types.