Crate lexical_util

Source
Expand description

Shared utilities for lexical conversion routines.

These are not meant to be used publicly for any numeric conversion routines, but provide optimized math routines, format packed struct definitions, and custom iterators for all workspaces.

§Features

  • std - Use the standard library.
  • power-of-two - Add support for parsing power-of-two integer strings.
  • radix - Add support for strings of any radix.
  • write-integers - Add support for writing integers.
  • write-floats - Add support for writing floats.
  • parse-integers - Add support for parsing integers.
  • parse-floats - Add support for parsing floats.
  • compact - Reduce code size at the cost of performance.

§Note

None of this is considered a public API: any of the implementation details may change release-to-release without major or minor version changes. Use internal implementation details at your own risk.

lexical-util mainly exists as an implementation detail for lexical-core, although its API is stable. If you would like to use a high-level API that writes to and parses from String and &str, respectively, please look at lexical instead. If you would like an API that supports multiple numeric conversions, please look at lexical-core instead.

§Version Support

The minimum, standard, required version is 1.51.0, for const generic support. Older versions of lexical support older Rust versions.

Modules§

algorithm
Simple, shared algorithms for slices and iterators.
ascii
Utilities for working with ASCII characters.
assert
Debugging assertions to check a radix is valid.
constants
Pre-defined constants for numeric types.
digit
Utilities to process digits.
div128
Optimized division algorithms for u128.
error
Error type for numeric parsing functions.
extended_float
Extended precision floating-point type.
format
Public API for the number format packed struct.
iterator
Specialized iterator traits.
mul
Fast multiplication routines.
num
Utilities for Rust numbers.
options
Shared traits for the options API.
result
Result type for numeric parsing functions.
step
The maximum digits that can be held in a u64 for a given radix without overflow.

Macros§

from_lexical
Define FromLexical trait.
from_lexical_with_options
Define FromLexicalWithOptions trait.
to_lexical
Define ToLexical trait.
to_lexical_with_options
Define ToLexicalWithOptions trait.