OptionalbitsBit destination for an ArrayKind.Fp32 array: each element as its 4 wire
bytes in one little-endian 32-bit word — the same number OStream.writeFp32Bits
takes, so a payload read through this and written back reproduces the wire
exactly, signaling NaNs included.
Optionalf32Value destination for an ArrayKind.Fp32 array.
Optionalf64Destination for an ArrayKind.Fp64 array.
A float array's destination — for an
ArrayKind.Fp32orArrayKind.Fp64array. Exactly one of the two must be set, it must match the element width the array's ownfixlen_worddeclared (§4.8), and it must hold at leastcountelements; anything else is refused with SofabErrorCode.Argument before a single element is written.There is no bound here: §4.6 gives a float no schema interval to violate, so there is nothing to compare and nothing for the caller to state.
An
fp32array chooses between the two: f32 takes values, bits takes the wire words. The choice is real, not stylistic — reading anfp32through a double quiets a signaling NaN (0x7fa00001comes back0x7fe00001), so a reader that must reproducefp32payloads bit-for-bit (§4.6/§6.5) takes bits.fp64needs no such choice: aFloat64Arraycarries all 64 bits, payload NaNs included.