Crates.io | ufmt_float |
lib.rs | ufmt_float |
version | 0.2.0 |
source | src |
created_at | 2020-01-02 09:02:26.878739 |
updated_at | 2022-09-08 07:50:49.971365 |
description | A rough implementation of a writer for f32 and f64 for ufmt. |
homepage | |
repository | https://github.com/tl8roy/ufmt_float |
max_upload_size | |
id | 194424 |
size | 15,804 |
There are six levels of precision based on the number of places after the decimal point. The accuracy depends a lot on the number of significant figures and the decimal selected. Use the lowest precision possible for the best results.
How to use:
uFmt_fx
enum with the variant the level of precision requireduse ufmt::{uwriteln};
use ufmt_float::uFmt_f32;
let pi = 3.14159234;
let mut s = String::new();
let pi_write = uFmt_f32::Zero(pi);
uwriteln!(&mut s, "{}",pi_write).unwrap();
Current accuary is about 4-5 significant figures depending on the value.
The only relevant feature is maths
. If this is set, the library will use the micromaths crate to perform the transformation on the f32 struct. If not selected it will use a method that works in theory but may intoduce errors.
Please add an issue or PR if you have a suggestion on how to increase this.
There is no rounding on the last digit nor is the seperator selectable at the moment