strtod 0.2.0

A high precision floating point parser implementation for Rust
Documentation
  • Coverage
  • 50%
    2 out of 4 items documented0 out of 2 items with examples
  • Size
  • Source code size: 105.46 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.99 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 13s Average build duration of successful builds.
  • all releases: 10s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • kod-kristoff/strtod
    0 0 4
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • pvginkel kod-kristoff

strtod for Rust

License

Introduction

strtod is a floating point parsing implementation for Rust with very high precision, far better than the built in Rust floating point parser. https://docs.rs/strtod The documentation can be found at https://docs.rs/strtod.

This is a maintained fork of strtod.

Remarks

The quality of the source is not really something to write home about. The reason for this is that this implementation is a verbatim translation from http://mxr.mozilla.org/mozilla-central/source/js/src/dtoa.c. That being said, the quality of the parser itself is very high.

The performance of this implementation should be OK. However there is room for improvement in the BigNum implementation that the parser uses, e.g. by caching instances or calculations. The original implementation does this, but this has been removed from this implementation.

Bugs

Bugs should be reported through github at http://github.com/kod-kristoff/strtod/issues.

Minimum Supported Rust Version

This library supports Rust version 1.48.0. Every change of the MSRV is done with a minor version bump.

The following versions of this library supports Rust version as below:

  • strtod v0.2: Rust 1.48.0
  • strtod v0.1: Rust 1.16.0

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.