Struct lexical_core::write_float_options::OptionsBuilder
source · [−]pub struct OptionsBuilder { /* private fields */ }
Expand description
Builder for Options
.
Implementations
sourceimpl OptionsBuilder
impl OptionsBuilder
pub const fn new() -> OptionsBuilder
sourcepub const fn get_max_significant_digits(&self) -> Option<NonZeroUsize>
pub const fn get_max_significant_digits(&self) -> Option<NonZeroUsize>
Get the maximum number of significant digits to write.
sourcepub const fn get_min_significant_digits(&self) -> Option<NonZeroUsize>
pub const fn get_min_significant_digits(&self) -> Option<NonZeroUsize>
Get the minimum number of significant digits to write.
sourcepub const fn get_positive_exponent_break(&self) -> Option<NonZeroI32>
pub const fn get_positive_exponent_break(&self) -> Option<NonZeroI32>
Get the maximum exponent prior to using scientific notation.
sourcepub const fn get_negative_exponent_break(&self) -> Option<NonZeroI32>
pub const fn get_negative_exponent_break(&self) -> Option<NonZeroI32>
Get the minimum exponent prior to using scientific notation.
sourcepub const fn get_round_mode(&self) -> RoundMode
pub const fn get_round_mode(&self) -> RoundMode
Get the rounding mode for writing digits with precision control.
sourcepub const fn get_trim_floats(&self) -> bool
pub const fn get_trim_floats(&self) -> bool
Get if we should trim a trailing ".0"
from floats.
sourcepub const fn get_exponent(&self) -> u8
pub const fn get_exponent(&self) -> u8
Get the character to designate the exponent component of a float.
sourcepub const fn get_decimal_point(&self) -> u8
pub const fn get_decimal_point(&self) -> u8
Get the character to separate the integer from the fraction components.
sourcepub const fn get_nan_string(&self) -> Option<&'static [u8]>
pub const fn get_nan_string(&self) -> Option<&'static [u8]>
Get the string representation for NaN
.
sourcepub const fn get_inf_string(&self) -> Option<&'static [u8]>
pub const fn get_inf_string(&self) -> Option<&'static [u8]>
Get the short string representation for Infinity
.
sourcepub const fn max_significant_digits(
self,
max_significant_digits: Option<NonZeroUsize>
) -> OptionsBuilder
pub const fn max_significant_digits(
self,
max_significant_digits: Option<NonZeroUsize>
) -> OptionsBuilder
Set the maximum number of significant digits to write.
sourcepub const fn min_significant_digits(
self,
min_significant_digits: Option<NonZeroUsize>
) -> OptionsBuilder
pub const fn min_significant_digits(
self,
min_significant_digits: Option<NonZeroUsize>
) -> OptionsBuilder
Set the minimum number of significant digits to write.
sourcepub const fn positive_exponent_break(
self,
positive_exponent_break: Option<NonZeroI32>
) -> OptionsBuilder
pub const fn positive_exponent_break(
self,
positive_exponent_break: Option<NonZeroI32>
) -> OptionsBuilder
Set the maximum exponent prior to using scientific notation.
sourcepub const fn negative_exponent_break(
self,
negative_exponent_break: Option<NonZeroI32>
) -> OptionsBuilder
pub const fn negative_exponent_break(
self,
negative_exponent_break: Option<NonZeroI32>
) -> OptionsBuilder
Set the minimum exponent prior to using scientific notation.
sourcepub const fn round_mode(self, round_mode: RoundMode) -> OptionsBuilder
pub const fn round_mode(self, round_mode: RoundMode) -> OptionsBuilder
Set the rounding mode for writing digits with precision control.
sourcepub const fn trim_floats(self, trim_floats: bool) -> OptionsBuilder
pub const fn trim_floats(self, trim_floats: bool) -> OptionsBuilder
Set if we should trim a trailing ".0"
from floats.
sourcepub const fn exponent(self, exponent: u8) -> OptionsBuilder
pub const fn exponent(self, exponent: u8) -> OptionsBuilder
Set the character to designate the exponent component of a float.
sourcepub const fn decimal_point(self, decimal_point: u8) -> OptionsBuilder
pub const fn decimal_point(self, decimal_point: u8) -> OptionsBuilder
Set the character to separate the integer from the fraction components.
sourcepub const fn nan_string(
self,
nan_string: Option<&'static [u8]>
) -> OptionsBuilder
pub const fn nan_string(
self,
nan_string: Option<&'static [u8]>
) -> OptionsBuilder
Set the string representation for NaN
.
sourcepub const fn inf_string(
self,
inf_string: Option<&'static [u8]>
) -> OptionsBuilder
pub const fn inf_string(
self,
inf_string: Option<&'static [u8]>
) -> OptionsBuilder
Set the string representation for Infinity
.
sourcepub const fn nan_str_is_valid(&self) -> bool
pub const fn nan_str_is_valid(&self) -> bool
Determine if nan_str
is valid.
sourcepub const fn inf_str_is_valid(&self) -> bool
pub const fn inf_str_is_valid(&self) -> bool
Determine if inf_str
is valid.
sourcepub const unsafe fn build_unchecked(&self) -> Options
pub const unsafe fn build_unchecked(&self) -> Options
Build the Options struct with bounds validation.
Safety
Safe as long as is_valid
is true. If nan_string
or inf_string
are too long, writing special floats may lead to buffer overflows,
and therefore severe security vulnerabilities.
Trait Implementations
sourceimpl Clone for OptionsBuilder
impl Clone for OptionsBuilder
sourcefn clone(&self) -> OptionsBuilder
fn clone(&self) -> OptionsBuilder
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more