panic-write

Crates.iopanic-write
lib.rspanic-write
version0.1.0
sourcesrc
created_at2020-09-13 13:25:22.76077
updated_at2020-09-13 13:25:22.76077
descriptionWrite panic messages to a core::fmt::Write and then halt
homepage
repository
max_upload_size
id288180
size17,028
Robin Appelman (icewind1991)

documentation

https://docs.rs/panic-write

README

panic-write

Write panic messages to a core::fmt::Write and then halt, intended for bare metal development.

Usage

#![no_std]

use panic_write::PanicHandler;
use core::fmt::Write;

let serial = ...;
// assign the handler to an unused variable to stop it from getting dropped
let _panic_handler = PanicHandler::new(serial);

The panic handler is un-registered when dropped, if no active panic handler is registered and the app panics, it will halt without printing anything.

Additionally, the panic handler can also be used in place of the original Write throughout the rest of the app.

#![no_std]

use panic_write::PanicHandler;
use core::fmt::Write;

let serial = ...;
let mut serial = PanicHandler::new(serial);

writeln!(&mut serial, "starting app");
Commit count: 0

cargo fmt