CanonicalEncodingRulesElement.realNumber

Decodes a floating-point type.

Note that this method assumes that your machine uses http://ieeexplore.ieee.org/document/4610935/, IEEE 754-2008 floating point format.

  1. T realNumber [@property getter]
    class CanonicalEncodingRulesElement
    @property @system const
    T
    realNumber
    (
    T
    )
    ()
    if (
    isFloatingPoint!T
    )
  2. T realNumber [@property setter]

Throws

  • ASN1ConstructionException if the element is marked as "constructed"
  • ASN1TruncationException if the value appears to be "cut off"
  • ConvException if character-encoding cannot be converted to the selected floating-point type, T
  • ConvOverflowException if the character-encoding encodes a number that is too big for the selected floating-point type to express
  • ASN1ValueSizeException if the binary-encoding contains fewer bytes than the information byte purports, or if the binary-encoded mantissa is too big to be expressed by an unsigned long integer
  • ASN1ValueException if a complicated-form exponent or a non-zero-byte mantissa encodes a zero or even number, of if a base-10 (character-encoded) REAL is has something wrong that is not covered by ASN1ValueCharactersException or ASN1ValuePaddingException
  • ASN1ValueUndefinedException if both bits indicating the base in the information byte of a binary-encoded $(MONO REAL)'s information byte are set, which would indicate an invalid base, or if a special value has been indicated that is not defined by the specification
  • ASN1ValuePaddingException if a base-10 (character-encoded) REAL is encoded with leading zeroes, or trailing zeroes on the mantissa, or if the mantissa is encoded on more than the minimal necessary octets
  • ASN1ValueCharactersException if a base-10 (character-encoded) REAL is encoded with characters that are not numeric, a decimal, E, or plus or minus

Citations:

Meta