Struct lexical_core::write_float_options::OptionsBuilder
source · pub struct OptionsBuilder { /* private fields */ }
Expand description
Builder for Options
.
Implementations§
source§impl OptionsBuilder
impl OptionsBuilder
pub const fn new() -> OptionsBuilder
sourcepub const fn get_max_significant_digits(&self) -> Option<NonZero<usize>>
pub const fn get_max_significant_digits(&self) -> Option<NonZero<usize>>
Get the maximum number of significant digits to write.
sourcepub const fn get_min_significant_digits(&self) -> Option<NonZero<usize>>
pub const fn get_min_significant_digits(&self) -> Option<NonZero<usize>>
Get the minimum number of significant digits to write.
sourcepub const fn get_positive_exponent_break(&self) -> Option<NonZero<i32>>
pub const fn get_positive_exponent_break(&self) -> Option<NonZero<i32>>
Get the maximum exponent prior to using scientific notation.
sourcepub const fn get_negative_exponent_break(&self) -> Option<NonZero<i32>>
pub const fn get_negative_exponent_break(&self) -> Option<NonZero<i32>>
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<NonZero<usize>>,
) -> OptionsBuilder
pub const fn max_significant_digits( self, max_significant_digits: Option<NonZero<usize>>, ) -> OptionsBuilder
Set the maximum number of significant digits to write.
sourcepub const fn min_significant_digits(
self,
min_significant_digits: Option<NonZero<usize>>,
) -> OptionsBuilder
pub const fn min_significant_digits( self, min_significant_digits: Option<NonZero<usize>>, ) -> OptionsBuilder
Set the minimum number of significant digits to write.
sourcepub const fn positive_exponent_break(
self,
positive_exponent_break: Option<NonZero<i32>>,
) -> OptionsBuilder
pub const fn positive_exponent_break( self, positive_exponent_break: Option<NonZero<i32>>, ) -> OptionsBuilder
Set the maximum exponent prior to using scientific notation.
sourcepub const fn negative_exponent_break(
self,
negative_exponent_break: Option<NonZero<i32>>,
) -> OptionsBuilder
pub const fn negative_exponent_break( self, negative_exponent_break: Option<NonZero<i32>>, ) -> 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§
source§impl Clone for OptionsBuilder
impl Clone for OptionsBuilder
source§fn clone(&self) -> OptionsBuilder
fn clone(&self) -> OptionsBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for OptionsBuilder
impl Debug for OptionsBuilder
source§impl Default for OptionsBuilder
impl Default for OptionsBuilder
source§fn default() -> OptionsBuilder
fn default() -> OptionsBuilder
source§impl PartialEq for OptionsBuilder
impl PartialEq for OptionsBuilder
impl Eq for OptionsBuilder
impl StructuralPartialEq for OptionsBuilder
Auto Trait Implementations§
impl Freeze for OptionsBuilder
impl RefUnwindSafe for OptionsBuilder
impl Send for OptionsBuilder
impl Sync for OptionsBuilder
impl Unpin for OptionsBuilder
impl UnwindSafe for OptionsBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)