Skip to main content

sel4_microkit_base/
lib.rs

1//
2// Copyright 2024, Colias Group, LLC
3//
4// SPDX-License-Identifier: BSD-2-Clause
5//
6
7#![no_std]
8#![feature(used_with_arg)]
9
10#[cfg(feature = "alloc")]
11extern crate alloc;
12
13mod channel;
14mod defer;
15mod handler;
16mod message;
17mod symbols;
18
19// TODO
20#[doc(hidden)]
21pub mod ipc;
22
23pub use channel::{Channel, Child, IrqAckError};
24pub use defer::{DeferredAction, DeferredActionInterface, DeferredActionSlot};
25pub use handler::{Handler, Infallible, Never, NullHandler};
26pub use ipc::{ChannelSet, DisplayChannelSet};
27pub use message::{
28    MessageInfo, MessageLabel, MessageRegisterValue, get_mr, set_mr, with_msg_bytes,
29    with_msg_bytes_mut, with_msg_regs, with_msg_regs_mut,
30};
31pub use symbols::{ipc_buffer_ptr, pd_is_passive, pd_name};
32
33// For macros
34#[doc(hidden)]
35pub mod _private {
36    pub use sel4_immutable_cell::ImmutableCell;
37}