embedded_runtime/
error.rs1use core::fmt::{self, Display, Formatter};
4
5#[macro_export]
7macro_rules! err {
8 ($message:expr) => {{
9 $crate::error::Error { message: $message, location: (file!(), line!()) }
10 }};
11}
12
13#[derive(Debug, Clone, Copy)]
18pub struct Error {
19 #[doc(hidden)]
21 pub message: &'static str,
22 #[doc(hidden)]
24 pub location: (&'static str, u32),
25}
26impl Display for Error {
27 fn fmt(&self, f: &mut Formatter) -> fmt::Result {
28 let (file, line) = self.location;
29 write!(f, "{} at {}:{}", self.message, file, line)
30 }
31}