Closed
Description
Consider making f64::from_str(src: &str) -> Result<f64, ParseFloatError>
case insensitive due to the following reasons:
- people may see infinity as a constant and write
"INF"
or"Inf"
f64::INFINITY
is all upper casef64::NAN
is all upper caseis_nan
is all lower casee
in"12e3"
is case insensitive, so it seems to be inconsequent"NaN"
is camel case, but"inf"
is lower case, which seems to be a little bit inconsistentto_ascii_lowercase
is slow and will not be of help as"NaN"
is mixed caseto_ascii_uppercase
is slow and will not be of help as"NaN"
is mixed case- a hypotetical function
to_standard_form(src: &str, dest: &mut str) -> Result<(), ParseFloatError>
is not possible asstr
cannot be mutable
So far, only "inf"
and "NaN"
are allowed.
Cons:
- slows parsers down by a minimal amount
- increases code size by a minimal amount