5 stable releases

1.2.0 Apr 30, 2024
1.1.0 Apr 11, 2024
1.0.2 Dec 1, 2023
1.0.0 Jul 18, 2022

#222 in Embedded development

Download history 3/week @ 2024-01-16 4/week @ 2024-01-23 3/week @ 2024-02-13 26/week @ 2024-02-20 66/week @ 2024-02-27 14/week @ 2024-03-05 23/week @ 2024-03-12 14/week @ 2024-03-19 19/week @ 2024-03-26 91/week @ 2024-04-02 138/week @ 2024-04-09 48/week @ 2024-04-16 36/week @ 2024-04-23 134/week @ 2024-04-30

362 downloads per month

MIT/Apache

7KB
96 lines

format_no_std

Implements write_str to get write_fmt, which is used in the format!() and format_args!() macros. For no_std formatting in a bare metal environment.

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.

Usage

Library usage example

let mut buf = [0u8; 64];
let s = format_no_std::show(
    &mut buf,
    format_args!("Test String {}: {}", "foo", 42),
).unwrap();

assert_eq!("Test String foo: 42", s);

lib.rs:

Implements write_str to get write_fmt, which is used in the format!() and format_args!() macros. For no_std formatting in a bare metal environment.

This code is based on https://stackoverflow.com/questions/50200268/how-can-i-use-the-format-macro-in-a-no-std-environment

let mut buf = [0u8; 64];
let s = format_no_std::show(
    &mut buf,
    format_args!("Test String {}: {}", "foo", 42),
).unwrap();

assert_eq!("Test String foo: 42", s);

No runtime deps