The encoding consists of a sequence of two integers: The signed integer that results from concatenating the integral part and the decimal part of the number, if any, as a ZigZag-encoded Base-128 64-bit Little Endian variable-length unsigned integer; and the position of the decimal mark from the last digit of the number encoded as a Base-128 64-bit Little Endian variable-length unsigned integer. More...
The encoding consists of a sequence of two integers: The signed integer that results from concatenating the integral part and the decimal part of the number, if any, as a ZigZag-encoded Base-128 64-bit Little Endian variable-length unsigned integer; and the position of the decimal mark from the last digit of the number encoded as a Base-128 64-bit Little Endian variable-length unsigned integer.
None
None
Given the input value 3.14, the encoding results in the variable-length integer 628 (the ZigZag encoding of 314) followed by the variable-length unsigned integer 2 (the number of decimal digits in the number).
Real numbers that represent integers are encoded with a decimal mark of zero. Given the input value -5.0, the encoding results in the variable-length integer 9 (the ZigZag encoding of -5) followed by the variable-length unsigned integer 0.