Create a float from an exponent and mantissa
Concepts
Behaviour
- Compute an XFL (xls17) floating point from the provided exponent and mantissa
- Return that XFL as an int64_t
Definition
int64_t float_set (
    int32_t exponent,
    int64_t mantissa
);
Example
int64_t small_amount =
  float_set(-81, 1);
Parameters
| Name | Type | Description | 
|---|---|---|
| exponent | int32_t | An exponent in the range -96to80 | 
| mantissa | int64_t | A mantissa. If negative then the sign of the float is negative. | 
Caution
When setting a mantissa that is greater or fewer than 16 decimal digits the exponent will be adjusted to ensure the mantissa is exactly 16 digits. This adjustment may result in an
INVALID_FLOATin some circumstances.
Special case
XFL canonical 0 is also 0 in the enclosing number. Thus there is never a need to call
float_set(0,0);
Return Code
| Type | Description | 
|---|---|
| int64_t | The XFL (xls17) enclosing number If negative, an error: INVALID_FLOAT- The adjustment of the mantissa to 16 digits produced an under or overflow. |