1#![no_std]
4#![feature(alloc_error_handler)]
5#![feature(negative_impls)]
6#![warn(missing_docs)]
7
8extern crate alloc;
9
10use core::panic::PanicInfo;
11
12mod allocator;
13mod bindings;
14mod error;
15
16pub mod adi;
17pub mod battery;
18pub mod controller;
19pub mod distance;
20pub mod imu;
21pub mod io;
22pub mod machine;
23pub mod macros;
24pub mod motor;
25pub mod peripherals;
26pub mod prelude;
27pub mod robot;
28pub mod rotation;
29pub mod rtos;
30pub mod serial;
31pub mod smart_port;
32
33#[doc(hidden)]
34pub use spin::once;
35
36#[panic_handler]
37fn panic(panic_info: &PanicInfo) -> ! {
38 crate::io::eprintln!("panic occurred!: {:#?}", panic_info);
39
40 unsafe {
41 libc::exit(1);
42 }
43}