def mul.fin
bend-lawful-stdlib@0.1.0.0 · src/float/format.bend:195
import bend-lawful-stdlib@0.1.0.0/src/float/format.bend as Format
import Base
import bend-lawful-stdlib@0.1.0.0/src/float/bin.bend as Bin
195def mul.fin(f: Format, na: Bool, a: Bin.Bin, ea: Nat, b: Val) -> Val:
196 match b:
197 case Z{nb}:
198 Z{Bool.xor(na, nb)}
199 case Inf{nb}:
200 Inf{Bool.xor(na, nb)}
201 case NaN{}:
202 NaN{}
203 case Fin{nb, mb, eb}:
204 round(f, Bool.xor(na, nb), Bin.mul(a, mb), Nat.sub(Nat.add(ea, eb), 300n))