divideBinaryFixedPoint function
BinaryFixedPoint
divideBinaryFixedPoint(
- BinaryFixedPoint a,
- Object b, [
- FixedPointRoundingMode rounding = FixedPointRoundingMode.strict
Divides a by b and returns a value with a's shape.
When b is another BinaryFixedPoint, it must have the same signedness;
its fractional bit count is used to rescale the quotient back to a's
fractional bits.
Implementation
BinaryFixedPoint divideBinaryFixedPoint(
BinaryFixedPoint a,
Object b, [
FixedPointRoundingMode rounding = FixedPointRoundingMode.strict,
]) {
final raw = switch (b) {
final BigInt scalar => _divideChecked(a.raw, scalar, rounding),
final BinaryFixedPoint value => _divideByFixedPoint(a, value, rounding),
_ => throw ArgumentError.value(
b,
'b',
'Expected BigInt or BinaryFixedPoint.',
),
};
return _withBinaryRaw(a, raw);
}