pub struct NumberFormat<const FORMAT: u128>;
Expand description
Helper to access features from the packed format struct.
This contains accessory methods to read the formatting settings without using bitmasks directly on the underlying packed struct.
Some of the core functionality includes support for:
- Digit separators: ignored characters used to make numbers more readable,
such as
100,000
. - Non-decimal radixes: writing or parsing numbers written in binary, hexadecimal, or other bases.
- Special numbers: disabling support for special floating-point, such as
NaN
. - Number components: require signs, significant digits, and more.
This should always be constructed via NumberFormatBuilder
.
See NumberFormatBuilder
for the fields for the packed struct.
§Examples
use lexical_util::format::{RUST_LITERAL, NumberFormat};
let format = NumberFormat::<{ RUST_LITERAL }> {};
assert!(format.no_positive_mantissa_sign());
assert!(format.no_special());
assert!(format.internal_digit_separator());
assert!(format.trailing_digit_separator());
assert!(format.consecutive_digit_separator());
assert!(!format.no_exponent_notation());
Implementations§
Source§impl<const FORMAT: u128> NumberFormat<FORMAT>
impl<const FORMAT: u128> NumberFormat<FORMAT>
Sourcepub const REQUIRED_INTEGER_DIGITS: bool
pub const REQUIRED_INTEGER_DIGITS: bool
If digits are required before the decimal point.
Sourcepub const REQUIRED_FRACTION_DIGITS: bool
pub const REQUIRED_FRACTION_DIGITS: bool
If digits are required after the decimal point.
Sourcepub const REQUIRED_EXPONENT_DIGITS: bool
pub const REQUIRED_EXPONENT_DIGITS: bool
If digits are required after the exponent character.
Sourcepub const REQUIRED_MANTISSA_DIGITS: bool
pub const REQUIRED_MANTISSA_DIGITS: bool
If significant digits are required.
Sourcepub const REQUIRED_DIGITS: bool
pub const REQUIRED_DIGITS: bool
If at least 1 digit in the number is required.
See required_digits
.
Sourcepub const NO_POSITIVE_MANTISSA_SIGN: bool
pub const NO_POSITIVE_MANTISSA_SIGN: bool
If a positive sign before the mantissa is not allowed.
Sourcepub const REQUIRED_MANTISSA_SIGN: bool
pub const REQUIRED_MANTISSA_SIGN: bool
If a sign symbol before the mantissa is required.
Sourcepub const NO_EXPONENT_NOTATION: bool
pub const NO_EXPONENT_NOTATION: bool
If exponent notation is not allowed.
See no_exponent_notation
.
Sourcepub const NO_POSITIVE_EXPONENT_SIGN: bool
pub const NO_POSITIVE_EXPONENT_SIGN: bool
If a positive sign before the exponent is not allowed.
Sourcepub const REQUIRED_EXPONENT_SIGN: bool
pub const REQUIRED_EXPONENT_SIGN: bool
If a sign symbol before the exponent is required.
Sourcepub const NO_EXPONENT_WITHOUT_FRACTION: bool
pub const NO_EXPONENT_WITHOUT_FRACTION: bool
If an exponent without fraction is not allowed.
Sourcepub const NO_SPECIAL: bool
pub const NO_SPECIAL: bool
If special (non-finite) values are not allowed.
See no_special
.
Sourcepub const CASE_SENSITIVE_SPECIAL: bool
pub const CASE_SENSITIVE_SPECIAL: bool
If special (non-finite) values are case-sensitive.
Sourcepub const NO_INTEGER_LEADING_ZEROS: bool
pub const NO_INTEGER_LEADING_ZEROS: bool
If leading zeros before an integer are not allowed.
Sourcepub const NO_FLOAT_LEADING_ZEROS: bool
pub const NO_FLOAT_LEADING_ZEROS: bool
If leading zeros before a float are not allowed.
Sourcepub const REQUIRED_EXPONENT_NOTATION: bool
pub const REQUIRED_EXPONENT_NOTATION: bool
If exponent notation is required.
Sourcepub const CASE_SENSITIVE_EXPONENT: bool
pub const CASE_SENSITIVE_EXPONENT: bool
If exponent characters are case-sensitive.
Sourcepub const CASE_SENSITIVE_BASE_PREFIX: bool
pub const CASE_SENSITIVE_BASE_PREFIX: bool
If base prefixes are case-sensitive.
Sourcepub const CASE_SENSITIVE_BASE_SUFFIX: bool
pub const CASE_SENSITIVE_BASE_SUFFIX: bool
If base suffixes are case-sensitive.
Sourcepub const INTEGER_INTERNAL_DIGIT_SEPARATOR: bool
pub const INTEGER_INTERNAL_DIGIT_SEPARATOR: bool
If digit separators are allowed between integer digits.
This will not consider an input of only the digit separator to be a valid separator: the digit separator must be surrounded by digits.
Sourcepub const FRACTION_INTERNAL_DIGIT_SEPARATOR: bool
pub const FRACTION_INTERNAL_DIGIT_SEPARATOR: bool
If digit separators are allowed between fraction digits.
This will not consider an input of only the digit separator to be a valid separator: the digit separator must be surrounded by digits.
Sourcepub const EXPONENT_INTERNAL_DIGIT_SEPARATOR: bool
pub const EXPONENT_INTERNAL_DIGIT_SEPARATOR: bool
If digit separators are allowed between exponent digits.
This will not consider an input of only the digit separator to be a valid separator: the digit separator must be surrounded by digits.
Sourcepub const INTERNAL_DIGIT_SEPARATOR: bool
pub const INTERNAL_DIGIT_SEPARATOR: bool
If digit separators are allowed between digits.
This will not consider an input of only the digit separator to be a valid separator: the digit separator must be surrounded by digits.
Sourcepub const INTEGER_LEADING_DIGIT_SEPARATOR: bool
pub const INTEGER_LEADING_DIGIT_SEPARATOR: bool
If a digit separator is allowed before any integer digits.
This will consider an input of only the digit separator to be a identical to empty input.
Sourcepub const FRACTION_LEADING_DIGIT_SEPARATOR: bool
pub const FRACTION_LEADING_DIGIT_SEPARATOR: bool
If a digit separator is allowed before any integer digits.
This will consider an input of only the digit separator to be a identical to empty input.
Sourcepub const EXPONENT_LEADING_DIGIT_SEPARATOR: bool
pub const EXPONENT_LEADING_DIGIT_SEPARATOR: bool
If a digit separator is allowed before any exponent digits.
This will consider an input of only the digit separator to be a identical to empty input.
Sourcepub const LEADING_DIGIT_SEPARATOR: bool
pub const LEADING_DIGIT_SEPARATOR: bool
If a digit separator is allowed before any digits.
This will consider an input of only the digit separator to be a identical to empty input.
Sourcepub const INTEGER_TRAILING_DIGIT_SEPARATOR: bool
pub const INTEGER_TRAILING_DIGIT_SEPARATOR: bool
If a digit separator is allowed after any integer digits.
This will consider an input of only the digit separator to be a identical to empty input.
Sourcepub const FRACTION_TRAILING_DIGIT_SEPARATOR: bool
pub const FRACTION_TRAILING_DIGIT_SEPARATOR: bool
If a digit separator is allowed after any fraction digits.
This will consider an input of only the digit separator to be a identical to empty input.
Sourcepub const EXPONENT_TRAILING_DIGIT_SEPARATOR: bool
pub const EXPONENT_TRAILING_DIGIT_SEPARATOR: bool
If a digit separator is allowed after any exponent digits.
This will consider an input of only the digit separator to be a identical to empty input.
Sourcepub const TRAILING_DIGIT_SEPARATOR: bool
pub const TRAILING_DIGIT_SEPARATOR: bool
If a digit separator is allowed after any digits.
This will consider an input of only the digit separator to be a identical to empty input.
Sourcepub const INTEGER_CONSECUTIVE_DIGIT_SEPARATOR: bool
pub const INTEGER_CONSECUTIVE_DIGIT_SEPARATOR: bool
If multiple consecutive integer digit separators are allowed.
Sourcepub const FRACTION_CONSECUTIVE_DIGIT_SEPARATOR: bool
pub const FRACTION_CONSECUTIVE_DIGIT_SEPARATOR: bool
If multiple consecutive fraction digit separators are allowed.
Sourcepub const EXPONENT_CONSECUTIVE_DIGIT_SEPARATOR: bool
pub const EXPONENT_CONSECUTIVE_DIGIT_SEPARATOR: bool
If multiple consecutive exponent digit separators are allowed.
Sourcepub const CONSECUTIVE_DIGIT_SEPARATOR: bool
pub const CONSECUTIVE_DIGIT_SEPARATOR: bool
If multiple consecutive digit separators are allowed.
Sourcepub const SPECIAL_DIGIT_SEPARATOR: bool
pub const SPECIAL_DIGIT_SEPARATOR: bool
If any digit separators are allowed in special (non-finite) values.
Sourcepub const DIGIT_SEPARATOR: u8
pub const DIGIT_SEPARATOR: u8
The digit separator character in the packed struct.
See digit_separator
.
Sourcepub const BASE_PREFIX: u8
pub const BASE_PREFIX: u8
The base prefix character in the packed struct.
See base_prefix
.
Sourcepub const BASE_SUFFIX: u8
pub const BASE_SUFFIX: u8
The base suffix character in the packed struct.
See base_suffix
.
Sourcepub const MANTISSA_RADIX: u32
pub const MANTISSA_RADIX: u32
The radix for the significant digits in the packed struct.
See mantissa_radix
.
Sourcepub const RADIX: u32 = Self::MANTISSA_RADIX
pub const RADIX: u32 = Self::MANTISSA_RADIX
The radix for the significant digits in the packed struct.
Alias for MANTISSA_RADIX
.
Sourcepub const EXPONENT_BASE: u32
pub const EXPONENT_BASE: u32
The base for the exponent.
See exponent_base
.
Sourcepub const EXPONENT_RADIX: u32
pub const EXPONENT_RADIX: u32
The radix for the exponent digits.
See exponent_radix
.
Sourcepub const fn new() -> NumberFormat<FORMAT>
pub const fn new() -> NumberFormat<FORMAT>
Create new instance (for methods and validation).
This uses the same settings as in the FORMAT
packed struct.
Sourcepub const fn error(&self) -> Error
pub const fn error(&self) -> Error
Get the error type from the format.
If Error::Success
is returned, then no error occurred.
Sourcepub const fn is_valid_radix(&self) -> bool
pub const fn is_valid_radix(&self) -> bool
Determine if the radixes in the number format are valid.
Sourcepub const fn error_radix(&self) -> Error
pub const fn error_radix(&self) -> Error
Get the error type from the radix-only for the format.
If Error::Success
is returned, then no error occurred.
Sourcepub const fn required_integer_digits(&self) -> bool
pub const fn required_integer_digits(&self) -> bool
Sourcepub const fn required_fraction_digits(&self) -> bool
pub const fn required_fraction_digits(&self) -> bool
Sourcepub const fn required_exponent_digits(&self) -> bool
pub const fn required_exponent_digits(&self) -> bool
Sourcepub const fn required_mantissa_digits(&self) -> bool
pub const fn required_mantissa_digits(&self) -> bool
Sourcepub const fn required_digits(&self) -> bool
pub const fn required_digits(&self) -> bool
Sourcepub const fn no_positive_mantissa_sign(&self) -> bool
pub const fn no_positive_mantissa_sign(&self) -> bool
Sourcepub const fn required_mantissa_sign(&self) -> bool
pub const fn required_mantissa_sign(&self) -> bool
Sourcepub const fn no_exponent_notation(&self) -> bool
pub const fn no_exponent_notation(&self) -> bool
Sourcepub const fn no_positive_exponent_sign(&self) -> bool
pub const fn no_positive_exponent_sign(&self) -> bool
Sourcepub const fn required_exponent_sign(&self) -> bool
pub const fn required_exponent_sign(&self) -> bool
Sourcepub const fn no_exponent_without_fraction(&self) -> bool
pub const fn no_exponent_without_fraction(&self) -> bool
Sourcepub const fn no_special(&self) -> bool
pub const fn no_special(&self) -> bool
Sourcepub const fn case_sensitive_special(&self) -> bool
pub const fn case_sensitive_special(&self) -> bool
Get if special (non-finite) values are case-sensitive.
If set to true
, then NaN
and nan
are treated as the same value
(Not a Number). Can only be modified with
feature
format
. Defaults to false
.
§Used For
- Parse Float
Sourcepub const fn no_integer_leading_zeros(&self) -> bool
pub const fn no_integer_leading_zeros(&self) -> bool
Sourcepub const fn no_float_leading_zeros(&self) -> bool
pub const fn no_float_leading_zeros(&self) -> bool
Get if leading zeros before a float are not allowed.
This is before the significant digits of the float, that is, if there is
1 or more digits in the integral component and the leading digit is 0,
Can only be modified with feature
format
. Defaults
to false
.
§Examples
Input | Valid? |
---|---|
01 | ❌ |
01.0 | ❌ |
0 | ✔️ |
10 | ✔️ |
0.1 | ✔️ |
§Used For
- Parse Float
Sourcepub const fn required_exponent_notation(&self) -> bool
pub const fn required_exponent_notation(&self) -> bool
Sourcepub const fn case_sensitive_exponent(&self) -> bool
pub const fn case_sensitive_exponent(&self) -> bool
Sourcepub const fn case_sensitive_base_prefix(&self) -> bool
pub const fn case_sensitive_base_prefix(&self) -> bool
Sourcepub const fn case_sensitive_base_suffix(&self) -> bool
pub const fn case_sensitive_base_suffix(&self) -> bool
Sourcepub const fn integer_internal_digit_separator(&self) -> bool
pub const fn integer_internal_digit_separator(&self) -> bool
Get if digit separators are allowed between integer digits.
This will not consider an input of only the digit separator
to be a valid separator: the digit separator must be surrounded by
digits. Can only be modified with feature
format
.
Defaults to false
.
§Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1 | ✔️ |
_ | ❌ |
1_1 | ✔️ |
1_ | ❌ |
_1 | ❌ |
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn fraction_internal_digit_separator(&self) -> bool
pub const fn fraction_internal_digit_separator(&self) -> bool
Get if digit separators are allowed between fraction digits.
This will not consider an input of only the digit separator
to be a valid separator: the digit separator must be surrounded by
digits. Can only be modified with feature
format
.
Defaults to false
.
§Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1.1 | ✔️ |
1._ | ❌ |
1.1_1 | ✔️ |
1.1_ | ❌ |
1._1 | ❌ |
§Used For
- Parse Float
Sourcepub const fn exponent_internal_digit_separator(&self) -> bool
pub const fn exponent_internal_digit_separator(&self) -> bool
Get if digit separators are allowed between exponent digits.
This will not consider an input of only the digit separator
to be a valid separator: the digit separator must be surrounded by
digits. Can only be modified with feature
format
.
Defaults to false
.
§Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1.1e1 | ✔️ |
1.1e_ | ❌ |
1.1e1_1 | ✔️ |
1.1e1_ | ❌ |
1.1e_1 | ❌ |
§Used For
- Parse Float
Sourcepub const fn internal_digit_separator(&self) -> bool
pub const fn internal_digit_separator(&self) -> bool
Get if digit separators are allowed between digits.
This will not consider an input of only the digit separator
to be a valid separator: the digit separator must be surrounded by
digits. This is equivalent to any of integer_internal_digit_separator
,
fraction_internal_digit_separator
, or
exponent_internal_digit_separator
being set.
Sourcepub const fn integer_leading_digit_separator(&self) -> bool
pub const fn integer_leading_digit_separator(&self) -> bool
Get if a digit separator is allowed before any integer digits.
This will consider an input of only the digit separator
to be a identical to empty input. Can only be modified with
feature
format
. Defaults to false
.
§Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1 | ✔️ |
_ | ❌ |
1_1 | ❌ |
1_ | ❌ |
_1 | ✔️ |
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn fraction_leading_digit_separator(&self) -> bool
pub const fn fraction_leading_digit_separator(&self) -> bool
Get if a digit separator is allowed before any fraction digits.
This will consider an input of only the digit separator
to be a identical to empty input. Can only be modified with
feature
format
. Defaults to false
.
§Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1.1 | ✔️ |
1._ | ❌ |
1.1_1 | ❌ |
1.1_ | ❌ |
1._1 | ✔️ |
§Used For
- Parse Float
Sourcepub const fn exponent_leading_digit_separator(&self) -> bool
pub const fn exponent_leading_digit_separator(&self) -> bool
Get if a digit separator is allowed before any exponent digits.
This will consider an input of only the digit separator
to be a identical to empty input. Can only be modified with
feature
format
. Defaults to false
.
§Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1.1e1 | ✔️ |
1.1e_ | ❌ |
1.1e1_1 | ❌ |
1.1e1_ | ❌ |
1.1e_1 | ✔️ |
§Used For
- Parse Float
Sourcepub const fn leading_digit_separator(&self) -> bool
pub const fn leading_digit_separator(&self) -> bool
Get if a digit separator is allowed before any digits.
This will consider an input of only the digit separator
to be a identical to empty input. This is equivalent to
any of integer_leading_digit_separator
,
fraction_leading_digit_separator
, or
exponent_leading_digit_separator
being set.
Sourcepub const fn integer_trailing_digit_separator(&self) -> bool
pub const fn integer_trailing_digit_separator(&self) -> bool
Get if a digit separator is allowed after any integer digits.
This will consider an input of only the digit separator
to be a identical to empty input. Can only be modified with
feature
format
. Defaults to false
.
§Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1 | ✔️ |
_ | ❌ |
1_1 | ❌ |
1_ | ✔️ |
_1 | ❌ |
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn fraction_trailing_digit_separator(&self) -> bool
pub const fn fraction_trailing_digit_separator(&self) -> bool
Get if a digit separator is allowed after any fraction digits.
This will consider an input of only the digit separator
to be a identical to empty input. Can only be modified with
feature
format
. Defaults to false
. # Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1.1 | ✔️ |
1._ | ❌ |
1.1_1 | ❌ |
1.1_ | ✔️ |
1._1 | ❌ |
§Used For
- Parse Float
Sourcepub const fn exponent_trailing_digit_separator(&self) -> bool
pub const fn exponent_trailing_digit_separator(&self) -> bool
Get if a digit separator is allowed after any exponent digits.
This will consider an input of only the digit separator
to be a identical to empty input. Can only be modified with
feature
format
. Defaults to false
.
§Examples
Using a digit separator of _
.
Input | Valid? |
---|---|
1.1e1 | ✔️ |
1.1e_ | ❌ |
1.1e1_1 | ❌ |
1.1e1_ | ✔️ |
1.1e_1 | ❌ |
§Used For
- Parse Float
Sourcepub const fn trailing_digit_separator(&self) -> bool
pub const fn trailing_digit_separator(&self) -> bool
Get if a digit separator is allowed after any digits.
This will consider an input of only the digit separator
to be a identical to empty input. This is equivalent to
any of integer_trailing_digit_separator
,
fraction_trailing_digit_separator
, or
exponent_trailing_digit_separator
being set.
Sourcepub const fn integer_consecutive_digit_separator(&self) -> bool
pub const fn integer_consecutive_digit_separator(&self) -> bool
Get if multiple consecutive integer digit separators are allowed.
That is, using _
as a digit separator __
would be allowed where any
digit separators (leading, trailing, internal) are allowed in the
integer. Can only be modified with feature
format
.
Defaults to false
.
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn fraction_consecutive_digit_separator(&self) -> bool
pub const fn fraction_consecutive_digit_separator(&self) -> bool
Sourcepub const fn exponent_consecutive_digit_separator(&self) -> bool
pub const fn exponent_consecutive_digit_separator(&self) -> bool
Sourcepub const fn consecutive_digit_separator(&self) -> bool
pub const fn consecutive_digit_separator(&self) -> bool
Get if multiple consecutive digit separators are allowed.
This is equivalent to any of integer_consecutive_digit_separator
,
fraction_consecutive_digit_separator
, or
exponent_consecutive_digit_separator
being set.
Sourcepub const fn special_digit_separator(&self) -> bool
pub const fn special_digit_separator(&self) -> bool
Get if any digit separators are allowed in special (non-finite) values.
This enables leading, trailing, internal, and consecutive digit
separators for any special floats: for example, N__a_N_
is considered
the same as NaN
. Can only be modified with feature
format
. Defaults to false
.
§Used For
- Parse Float
Sourcepub const fn digit_separator(&self) -> u8
pub const fn digit_separator(&self) -> u8
Get the digit separator for the number format.
Digit separators are frequently used in number literals to group
digits: 1,000,000
is a lot more readable than 1000000
, but
the ,
characters should be ignored in the parsing of the number.
Can only be modified with feature
format
. Defaults
to 0
, or no digit separators allowed.
§Examples
Using a digit separator of _
(note that the validity
oh where a digit separator can appear depends on the other digit
separator flags).
Input | Valid? |
---|---|
1 | ✔️ |
1_4 | ✔️ |
+_14 | ✔️ |
+14e3_5 | ✔️ |
1_d | ❌ |
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn has_digit_separator(&self) -> bool
pub const fn has_digit_separator(&self) -> bool
Get if the format has a digit separator.
Sourcepub const fn base_prefix(&self) -> u8
pub const fn base_prefix(&self) -> u8
Get the optional character for the base prefix.
This character will come after a leading zero, so for example
setting the base prefix to x
means that a leading 0x
will
be ignore, if present. Can only be modified with
feature
power-of-two
or radix
along with
format
. Defaults to 0
, or no base prefix allowed.
§Examples
Using a base prefix of x
.
Input | Valid? |
---|---|
0x1 | ✔️ |
x1 | ❌ |
1 | ✔️ |
1x | ❌ |
1x1 | ❌ |
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn has_base_prefix(&self) -> bool
pub const fn has_base_prefix(&self) -> bool
Get if the format has a base suffix.
Sourcepub const fn base_suffix(&self) -> u8
pub const fn base_suffix(&self) -> u8
Get the optional character for the base suffix.
This character will at the end of the buffer, so for example
setting the base prefix to x
means that a trailing x
will
be ignored, if present. Can only be modified with
feature
power-of-two
or radix
along with
format
. Defaults to 0
, or no base suffix allowed.
§Examples
Using a base suffix of x
.
Input | Valid? |
---|---|
1 | ✔️ |
1x | ✔️ |
1d | ❌ |
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn has_base_suffix(&self) -> bool
pub const fn has_base_suffix(&self) -> bool
Get if the format has a base suffix.
Sourcepub const fn mantissa_radix(&self) -> u32
pub const fn mantissa_radix(&self) -> u32
Get the radix for mantissa digits.
This is only used for the significant digits, that is, the integral and
fractional components. Can only be modified with
feature
power-of-two
or radix
. Defaults
to 10
.
Radix | String | Number |
---|---|---|
2 | “10011010010” | 1234 |
3 | “1200201” | 1234 |
8 | “2322” | 1234 |
10 | “1234” | 1234 |
16 | “4d2” | 1234 |
31 | “18p” | 1234 |
§Used For
- Parse Float
- Parse Integer
- Write Float
- Write Integer
Sourcepub const fn radix(&self) -> u32
pub const fn radix(&self) -> u32
Get the radix for the significant digits.
This is an alias for mantissa_radix
.
Sourcepub const fn exponent_base(&self) -> u32
pub const fn exponent_base(&self) -> u32
Get the radix for the exponent.
For example, in 1.234e3
, it means 1.234 * 10^3
, and the exponent
base here is 10. Some programming languages, like C, support hex floats
with an exponent base of 2, for example 0x1.8p3
, or 1.5 * 2^3
.
Defaults to 10
. Can only be modified with feature
power-of-two
or radix
. Defaults to 10
.
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn exponent_radix(&self) -> u32
pub const fn exponent_radix(&self) -> u32
Get the radix for exponent digits.
This is only used for the exponent digits. We assume the radix for the
significant digits (mantissa_radix
) is
10 as is the exponent base. Defaults to 10
. Can only be modified with
feature
power-of-two
or radix
. Defaults to 10
.
Radix | String | Number |
---|---|---|
2 | “1.234^1100” | 1.234e9 |
3 | “1.234^110” | 1.234e9 |
8 | “1.234^14” | 1.234e9 |
10 | “1.234^12” | 1.234e9 |
16 | “1.234^c” | 1.234e9 |
31 | “1.234^c” | 1.234e9 |
§Used For
- Parse Float
- Parse Integer
Sourcepub const fn flags(&self) -> u128
pub const fn flags(&self) -> u128
Get the flags from the number format.
This contains all the non-character and non-radix values in the packed struct.
Sourcepub const fn interface_flags(&self) -> u128
pub const fn interface_flags(&self) -> u128
Get the interface flags from the number format.
This contains all the flags that dictate code flows, and therefore excludes logic like case-sensitive characters.
Sourcepub const fn digit_separator_flags(&self) -> u128
pub const fn digit_separator_flags(&self) -> u128
Get the digit separator flags from the number format.
Sourcepub const fn exponent_flags(&self) -> u128
pub const fn exponent_flags(&self) -> u128
Get the exponent flags from the number format.
This contains all the flags pertaining to exponent formats, including digit separators.
Sourcepub const fn integer_digit_separator_flags(&self) -> u128
pub const fn integer_digit_separator_flags(&self) -> u128
Get the integer digit separator flags from the number format.
Sourcepub const fn fraction_digit_separator_flags(&self) -> u128
pub const fn fraction_digit_separator_flags(&self) -> u128
Get the fraction digit separator flags from the number format.
Sourcepub const fn exponent_digit_separator_flags(&self) -> u128
pub const fn exponent_digit_separator_flags(&self) -> u128
Get the exponent digit separator flags from the number format.
Sourcepub const fn builder() -> NumberFormatBuilder
pub const fn builder() -> NumberFormatBuilder
Get NumberFormatBuilder
as a static function.
Sourcepub const fn rebuild() -> NumberFormatBuilder
pub const fn rebuild() -> NumberFormatBuilder
Create NumberFormatBuilder
using existing values.