def trunc(x): if type(x) is types.sfix: return floatingpoint.Trunc(x.v, x.k - x.f, x.f, x.kappa) elif type(x) is types.sfloat: v, p, z, s = floatingpoint.FLRound(x, 0) return types.sfloat(v, p, z, s, x.err) return x
def floor_fx(x): return load_sint(floatingpoint.Trunc(x.v, x.k - x.f, x.f, x.kappa), type(x))
def trunc(x): if type(x) is types.sfix: return floatingpoint.Trunc(x.v, x.k - x.f, x.f, x.kappa) elif type(x) is types.sfloat: return floatingpoint.FLRound(x, 0) return x