#integer #convert #atoi #no-std #slice

no-std btoi

Parse integers directly from ASCII byte slices

11 releases

Uses old Rust 2015

0.4.4 Jan 4, 2025
0.4.3 Feb 18, 2023
0.4.2 Feb 16, 2020
0.4.1 Apr 8, 2019
0.1.2 Nov 29, 2017

#8 in Parser tooling

Download history 64028/week @ 2025-01-08 68354/week @ 2025-01-15 65526/week @ 2025-01-22 62774/week @ 2025-01-29 71513/week @ 2025-02-05 69327/week @ 2025-02-12 66451/week @ 2025-02-19 69878/week @ 2025-02-26 67672/week @ 2025-03-05 69641/week @ 2025-03-12 70584/week @ 2025-03-19 68643/week @ 2025-03-26 70900/week @ 2025-04-02 68793/week @ 2025-04-09 77682/week @ 2025-04-16 89958/week @ 2025-04-23

320,044 downloads per month
Used in 225 crates (24 directly)

MIT/Apache

23KB
300 lines

btoi

Parse integers from ASCII byte slices.

crates.io docs.rs

Introduction

Provides functions similar to from_str_radix, but is faster when parsing directly from byte slices instead of strings.

Supports #![no_std].

use btoi::btoi;

assert_eq!(Ok(42), btoi(b"42"));
assert_eq!(Ok(-1000), btoi(b"-1000"));

Documentation

Read the documentation

Changelog

  • 0.4.3
    • Use #[track_caller].
  • 0.4.2
    • No longer !#[deny(warnings)], which is is a forwards compability hazard in libraries.
    • Explicit !#[forbid(unsafe_code)].
  • 0.4.1
    • - was parsed as zero, but should have errored. Thanks @wayslog.
  • 0.4.0
    • Change type of radix to u32 (from u8) to mirror the standard library.
    • No need to #[inline] generic functions.
  • 0.3.0
    • New default feature std. Disable for #![no_std] support.
    • Mark functions as #[inline].
  • 0.2.0
    • No longer reexport num-traits.
  • 0.1.3
    • Update to num-traits 0.2 (semver compatible).
  • 0.1.2
    • Fix documentation warnings.
    • Update dependencies.
  • 0.1.1
    • Documentation fixes.
  • 0.1.0
    • Initial release.

License

btoi is dual licensed under the Apache 2.0 and MIT license, at your option.

Dependencies

~150KB