fix(significant_digits): account for no dot or many dot

This commit is contained in:
electria 2026-07-21 12:08:40 -07:00
commit c108d3a2d2
Signed by: electria
SSH key fingerprint: SHA256:8LlB3ucPbBHqozqkhsNbaV5oG3SlzzqUj8FZDL6IPQs

View file

@ -47,20 +47,20 @@ pub fn get_significant_digits(n: &Float) -> usize {
}
if consecutive_zeros >= 10 {
significant_digits = i - consecutive_zeros;
significant_digits = i + 1 - consecutive_zeros;
break;
} else if consecutive_nines >= 10 {
significant_digits = i - consecutive_nines;
significant_digits = i + 1 - consecutive_nines;
break;
}
if !raw_string[i..raw_string.len()].contains(|c| matches!(c, '1'..='9')) {
significant_digits = i;
significant_digits = i + 1;
break;
}
}
significant_digits
significant_digits - raw_string.chars().filter(|c| *c == '.').count()
}
#[test]