1pub mod timer;
2pub mod blocking_mutex;
3pub mod arc;
4pub mod blocking_channel;
5#[cfg(not(feature = "std"))]
6#[cfg(feature = "alloc_rust")]
7pub mod alloc_rust;
8#[cfg(not(feature = "std"))]
9#[cfg(feature = "alloc_rtos")]
10pub mod alloc_rtos;
11#[cfg(all(not(feature = "std"), feature = "peripherals"))]
12pub mod peripheral;
13#[cfg(not(feature = "std"))]
14pub mod zbus_backend;
15
16#[cfg(all(feature = "alloc_rtos", feature = "alloc_rust"))]
17compile_error!("feature \"alloc_rtos\" and feature \"alloc_rust\" cannot be enabled at the same time");
18
19extern "C" {
20 #[cfg(not(feature = "std"))]
21 pub fn log_fn(format: *const u8, ...);
22 #[cfg(not(feature = "std"))]
23 #[allow(dead_code)]
24 pub fn trace_fn(file: *const u8, line: u32);
25 #[cfg(not(feature = "std"))]
26 pub fn timestamp() -> u32;
27 #[cfg(not(feature = "std"))]
28 #[allow(dead_code)]
29 pub fn timestamp_millis() -> u32;
30 #[cfg(not(feature = "std"))]
31 pub fn panic(format: *const u8, ...);
32}
33
34#[no_mangle]
35pub extern fn __aeabi_unwind_cpp_pr0() -> ()
36{
37 loop {}
38}
39
40#[no_mangle]
41pub extern fn __aeabi_unwind_cpp_pr1() -> ()
42{
43 loop {}
44}