Treatment toI16

conv/u32::toI16


Parameters

↳ var or_default: i16 = 0
↳ var truncate: bool = true

Inputs

⇥ value: Stream<u32>

Outputs

↦ into: Stream<i16>


Convert stream of u32 into i16.

As this conversion might be lossy (every possible u32 value cannot fit into i16), truncate allows value to be truncated to fit into a i16, and or_default set the value that is assigned when a u32 is out of range for i16 and truncation not allowed.

Truncation happens on the binary level, thus: 10010110 (150 if unsigned, -106 if signed) → 0110 (6).