Avoid to use floating point match

Its going to be forbidden, see issue 41255.
This commit is contained in:
est31 2017-04-14 02:58:54 +02:00
parent 43ef63d5b4
commit baeec7b8eb
1 changed files with 7 additions and 5 deletions

View File

@ -103,12 +103,14 @@ impl Gamma {
assert!(shape > 0.0, "Gamma::new called with shape <= 0");
assert!(scale > 0.0, "Gamma::new called with scale <= 0");
let repr = match shape {
1.0 => One(Exp::new(1.0 / scale)),
0.0...1.0 => Small(GammaSmallShape::new_raw(shape, scale)),
_ => Large(GammaLargeShape::new_raw(shape, scale)),
let repr = if shape == 1.0 {
One(Exp::new(1.0 / scale))
} else if 0.0 <= shape && shape < 1.0 {
Small(GammaSmallShape::new_raw(shape, scale))
} else {
Large(GammaLargeShape::new_raw(shape, scale))
};
Gamma { repr: repr }
Gamma { repr }
}
}