Struct lexical_util::format::NumberFormatBuilder
source · [−]pub struct NumberFormatBuilder { /* private fields */ }Expand description
Build number format from specifications.
Returns the format on calling build if it was able to compile the format, otherwise, returns None.
Fields
digit_separator- Character to separate digits.mantissa_radix- Radix for mantissa digits.exponent_base- Base for the exponent.exponent_radix- Radix for the exponent digits.base_prefix- Optional character for the base prefix.base_suffix- Optional character for the base suffix.required_integer_digits- If digits are required before the decimal point.required_fraction_digits- If digits are required after the decimal point.required_exponent_digits- If digits are required after the exponent character.required_mantissa_digits- If at least 1 significant digit is required.no_positive_mantissa_sign- If positive sign before the mantissa is not allowed.required_mantissa_sign- If positive sign before the mantissa is required.no_exponent_notation- If exponent notation is not allowed.no_positive_exponent_sign- If positive sign before the exponent is not allowed.required_exponent_sign- If sign before the exponent is required.no_exponent_without_fraction- If exponent without fraction is not allowed.no_special- If special (non-finite) values are not allowed.case_sensitive_special- If special (non-finite) values are case-sensitive.no_integer_leading_zeros- If leading zeros before an integer are not allowed.no_float_leading_zeros- If leading zeros before a float are not allowed.required_exponent_notation- If exponent notation is required.case_sensitive_exponent- If exponent characters are case-sensitive.case_sensitive_base_prefix- If base prefixes are case-sensitive.case_sensitive_base_suffix- If base suffixes are case-sensitive.integer_internal_digit_separator- If digit separators are allowed between integer digits.fraction_internal_digit_separator- If digit separators are allowed between fraction digits.exponent_internal_digit_separator- If digit separators are allowed between exponent digits.integer_leading_digit_separator- If a digit separator is allowed before any integer digits.fraction_leading_digit_separator- If a digit separator is allowed before any fraction digits.exponent_leading_digit_separator- If a digit separator is allowed before any exponent digits.integer_trailing_digit_separator- If a digit separator is allowed after any integer digits.fraction_trailing_digit_separator- If a digit separator is allowed after any fraction digits.exponent_trailing_digit_separator- If a digit separator is allowed after any exponent digits.integer_consecutive_digit_separator- If multiple consecutive integer digit separators are allowed.fraction_consecutive_digit_separator- If multiple consecutive fraction digit separators are allowed.special_digit_separator- If any digit separators are allowed in special (non-finite) values.
Write Integer Fields
No fields are used for writing integers.
Parse Integer Fields
These fields are used for parsing integers:
digit_separatormantissa_radixbase_prefixbase_suffixno_positive_mantissa_signrequired_mantissa_signno_integer_leading_zerosinteger_internal_digit_separatorinteger_leading_digit_separatorinteger_trailing_digit_separatorinteger_consecutive_digit_separator
Write Float Fields
These fields are used for writing floats:
mantissa_radixexponent_baseexponent_radixno_positive_mantissa_signrequired_mantissa_signno_exponent_notationno_positive_exponent_signrequired_exponent_signrequired_exponent_notation
Parse Float Fields
These fields are used for parsing floats:
digit_separatormantissa_radixexponent_baseexponent_radixbase_prefixbase_suffixrequired_integer_digitsrequired_fraction_digitsrequired_exponent_digitsno_positive_mantissa_signrequired_mantissa_signno_exponent_notationno_positive_exponent_signrequired_exponent_signno_exponent_without_fractionno_specialcase_sensitive_specialno_integer_leading_zerosno_float_leading_zerosrequired_exponent_notationcase_sensitive_exponentcase_sensitive_base_prefixcase_sensitive_base_suffixinteger_internal_digit_separatorfraction_internal_digit_separatorexponent_internal_digit_separatorinteger_leading_digit_separatorfraction_leading_digit_separatorexponent_leading_digit_separatorinteger_trailing_digit_separatorfraction_trailing_digit_separatorexponent_trailing_digit_separatorinteger_consecutive_digit_separatorfraction_consecutive_digit_separatorspecial_digit_separator
Implementations
sourceimpl NumberFormatBuilder
impl NumberFormatBuilder
sourcepub const fn get_digit_separator(&self) -> OptionU8
pub const fn get_digit_separator(&self) -> OptionU8
Get the digit separator for the number format.
sourcepub const fn get_mantissa_radix(&self) -> u8
pub const fn get_mantissa_radix(&self) -> u8
Get the radix for mantissa digits.
sourcepub const fn get_exponent_base(&self) -> OptionU8
pub const fn get_exponent_base(&self) -> OptionU8
Get the radix for the exponent.
sourcepub const fn get_exponent_radix(&self) -> OptionU8
pub const fn get_exponent_radix(&self) -> OptionU8
Get the radix for exponent digits.
sourcepub const fn get_base_prefix(&self) -> OptionU8
pub const fn get_base_prefix(&self) -> OptionU8
Get the optional character for the base prefix.
sourcepub const fn get_base_suffix(&self) -> OptionU8
pub const fn get_base_suffix(&self) -> OptionU8
Get the optional character for the base suffix.
sourcepub const fn get_required_integer_digits(&self) -> bool
pub const fn get_required_integer_digits(&self) -> bool
Get if digits are required before the decimal point.
sourcepub const fn get_required_fraction_digits(&self) -> bool
pub const fn get_required_fraction_digits(&self) -> bool
Get if digits are required after the decimal point.
sourcepub const fn get_required_exponent_digits(&self) -> bool
pub const fn get_required_exponent_digits(&self) -> bool
Get if digits are required after the exponent character.
sourcepub const fn get_required_mantissa_digits(&self) -> bool
pub const fn get_required_mantissa_digits(&self) -> bool
Get if at least 1 significant digit is required.
sourcepub const fn get_no_positive_mantissa_sign(&self) -> bool
pub const fn get_no_positive_mantissa_sign(&self) -> bool
Get if a positive sign before the mantissa is not allowed.
sourcepub const fn get_required_mantissa_sign(&self) -> bool
pub const fn get_required_mantissa_sign(&self) -> bool
Get if a sign symbol before the mantissa is required.
sourcepub const fn get_no_exponent_notation(&self) -> bool
pub const fn get_no_exponent_notation(&self) -> bool
Get if exponent notation is not allowed.
sourcepub const fn get_no_positive_exponent_sign(&self) -> bool
pub const fn get_no_positive_exponent_sign(&self) -> bool
Get if a positive sign before the exponent is not allowed.
sourcepub const fn get_required_exponent_sign(&self) -> bool
pub const fn get_required_exponent_sign(&self) -> bool
Get if a sign symbol before the exponent is required.
sourcepub const fn get_no_exponent_without_fraction(&self) -> bool
pub const fn get_no_exponent_without_fraction(&self) -> bool
Get if an exponent without fraction is not allowed.
sourcepub const fn get_no_special(&self) -> bool
pub const fn get_no_special(&self) -> bool
Get if special (non-finite) values are not allowed.
sourcepub const fn get_case_sensitive_special(&self) -> bool
pub const fn get_case_sensitive_special(&self) -> bool
Get if special (non-finite) values are case-sensitive.
sourcepub const fn get_no_integer_leading_zeros(&self) -> bool
pub const fn get_no_integer_leading_zeros(&self) -> bool
Get if leading zeros before an integer are not allowed.
sourcepub const fn get_no_float_leading_zeros(&self) -> bool
pub const fn get_no_float_leading_zeros(&self) -> bool
Get if leading zeros before a float are not allowed.
sourcepub const fn get_required_exponent_notation(&self) -> bool
pub const fn get_required_exponent_notation(&self) -> bool
Get if exponent notation is required.
sourcepub const fn get_case_sensitive_exponent(&self) -> bool
pub const fn get_case_sensitive_exponent(&self) -> bool
Get if exponent characters are case-sensitive.
sourcepub const fn get_case_sensitive_base_prefix(&self) -> bool
pub const fn get_case_sensitive_base_prefix(&self) -> bool
Get if base prefixes are case-sensitive.
sourcepub const fn get_case_sensitive_base_suffix(&self) -> bool
pub const fn get_case_sensitive_base_suffix(&self) -> bool
Get if base suffixes are case-sensitive.
sourcepub const fn get_integer_internal_digit_separator(&self) -> bool
pub const fn get_integer_internal_digit_separator(&self) -> bool
Get if digit separators are allowed between integer digits.
sourcepub const fn get_fraction_internal_digit_separator(&self) -> bool
pub const fn get_fraction_internal_digit_separator(&self) -> bool
Get if digit separators are allowed between fraction digits.
sourcepub const fn get_exponent_internal_digit_separator(&self) -> bool
pub const fn get_exponent_internal_digit_separator(&self) -> bool
Get if digit separators are allowed between exponent digits.
sourcepub const fn get_integer_leading_digit_separator(&self) -> bool
pub const fn get_integer_leading_digit_separator(&self) -> bool
Get if a digit separator is allowed before any integer digits.
sourcepub const fn get_fraction_leading_digit_separator(&self) -> bool
pub const fn get_fraction_leading_digit_separator(&self) -> bool
Get if a digit separator is allowed before any fraction digits.
sourcepub const fn get_exponent_leading_digit_separator(&self) -> bool
pub const fn get_exponent_leading_digit_separator(&self) -> bool
Get if a digit separator is allowed before any exponent digits.
sourcepub const fn get_integer_trailing_digit_separator(&self) -> bool
pub const fn get_integer_trailing_digit_separator(&self) -> bool
Get if a digit separator is allowed after any integer digits.
sourcepub const fn get_fraction_trailing_digit_separator(&self) -> bool
pub const fn get_fraction_trailing_digit_separator(&self) -> bool
Get if a digit separator is allowed after any fraction digits.
sourcepub const fn get_exponent_trailing_digit_separator(&self) -> bool
pub const fn get_exponent_trailing_digit_separator(&self) -> bool
Get if a digit separator is allowed after any exponent digits.
sourcepub const fn get_integer_consecutive_digit_separator(&self) -> bool
pub const fn get_integer_consecutive_digit_separator(&self) -> bool
Get if multiple consecutive integer digit separators are allowed.
sourcepub const fn get_fraction_consecutive_digit_separator(&self) -> bool
pub const fn get_fraction_consecutive_digit_separator(&self) -> bool
Get if multiple consecutive fraction digit separators are allowed.
sourcepub const fn get_exponent_consecutive_digit_separator(&self) -> bool
pub const fn get_exponent_consecutive_digit_separator(&self) -> bool
Get if multiple consecutive exponent digit separators are allowed.
sourcepub const fn get_special_digit_separator(&self) -> bool
pub const fn get_special_digit_separator(&self) -> bool
Get if any digit separators are allowed in special (non-finite) values.
sourcepub const fn build(&self) -> u128
pub const fn build(&self) -> u128
Create 128-bit, packed number format struct from builder options.
NOTE: This function will never fail, due to issues with panicking
(and therefore unwrapping Errors/Options) in const fns. It is
therefore up to you to ensure the format is valid, called via the
is_valid function on NumberFormat.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for NumberFormatBuilder
impl Send for NumberFormatBuilder
impl Sync for NumberFormatBuilder
impl Unpin for NumberFormatBuilder
impl UnwindSafe for NumberFormatBuilder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more