pub struct Buffer { /* private fields */ }
Expand description
Safe API for formatting floating point numbers to text.
§Example
let mut buffer = ryu_js::Buffer::new();
let printed = buffer.format_finite(1.234);
assert_eq!(printed, "1.234");
Implementations§
source§impl Buffer
impl Buffer
sourcepub fn new() -> Self
pub fn new() -> Self
This is a cheap operation; you don’t need to worry about reusing buffers for efficiency.
sourcepub fn format<F: Float>(&mut self, f: F) -> &str
pub fn format<F: Float>(&mut self, f: F) -> &str
Print a floating point number into this buffer and return a reference to its string representation within the buffer.
§Special cases
This function formats NaN as the string “NaN”, positive infinity as “Infinity”, and negative infinity as “-Infinity” to match the ECMAScript specification.
If your input is known to be finite, you may get better performance by
calling the format_finite
method instead of format
to avoid the
checks for special cases.
sourcepub fn format_finite<F: Float>(&mut self, f: F) -> &str
pub fn format_finite<F: Float>(&mut self, f: F) -> &str
Print a floating point number into this buffer and return a reference to its string representation within the buffer.
§Special cases
This function does not check for NaN or infinity. If the input number is not a finite float, the printed representation will be some correctly formatted but unspecified numerical value.
Please check is_finite
yourself before calling this function, or
check is_nan
and is_infinite
and handle those cases yourself.
sourcepub fn format_to_fixed<F: FloatToFixed>(
&mut self,
f: F,
fraction_digits: u8
) -> &str
pub fn format_to_fixed<F: FloatToFixed>( &mut self, f: F, fraction_digits: u8 ) -> &str
Print a floating point number into this buffer using the Number.prototype.toFixed()
notation
and return a reference to its string representation within the buffer.
The fraction_digits
argument must be between [0, 100]
inclusive,
If a values value that is greater than the max is passed in will be clamped to max.
§Special cases
This function formats NaN as the string “NaN”, positive infinity as “Infinity”, and negative infinity as “-Infinity” to match the ECMAScript specification.