xref: /openbmc/linux/rust/kernel/prelude.rs (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1247b365dSWedson Almeida Filho // SPDX-License-Identifier: GPL-2.0
2247b365dSWedson Almeida Filho 
3247b365dSWedson Almeida Filho //! The `kernel` prelude.
4247b365dSWedson Almeida Filho //!
5247b365dSWedson Almeida Filho //! These are the most common items used by Rust code in the kernel,
6247b365dSWedson Almeida Filho //! intended to be imported by all Rust code, for convenience.
7247b365dSWedson Almeida Filho //!
8247b365dSWedson Almeida Filho //! # Examples
9247b365dSWedson Almeida Filho //!
10247b365dSWedson Almeida Filho //! ```
11247b365dSWedson Almeida Filho //! use kernel::prelude::*;
12247b365dSWedson Almeida Filho //! ```
13247b365dSWedson Almeida Filho 
14dec1df54SFinn Behrens #[doc(no_inline)]
15247b365dSWedson Almeida Filho pub use core::pin::Pin;
16474be445SMiguel Ojeda 
17dec1df54SFinn Behrens #[doc(no_inline)]
18474be445SMiguel Ojeda pub use alloc::{boxed::Box, vec::Vec};
19474be445SMiguel Ojeda 
20dec1df54SFinn Behrens #[doc(no_inline)]
21*071cedc8SBenno Lossin pub use macros::{module, pin_data, pinned_drop, vtable, Zeroable};
22474be445SMiguel Ojeda 
230f595babSGary Guo pub use super::build_assert;
240f595babSGary Guo 
25dec1df54SFinn Behrens // `super::std_vendor` is hidden, which makes the macro inline for some reason.
26dec1df54SFinn Behrens #[doc(no_inline)]
27dec1df54SFinn Behrens pub use super::dbg;
28dec1df54SFinn Behrens pub use super::{pr_alert, pr_crit, pr_debug, pr_emerg, pr_err, pr_info, pr_notice, pr_warn};
29474be445SMiguel Ojeda 
308586f1acSBenno Lossin pub use super::{init, pin_init, try_init, try_pin_init};
318586f1acSBenno Lossin 
32ef9e3797SMiguel Ojeda pub use super::static_assert;
33ef9e3797SMiguel Ojeda 
3425d176a4SWedson Almeida Filho pub use super::error::{code::*, Error, Result};
35474be445SMiguel Ojeda 
36d126d238SGary Guo pub use super::{str::CStr, ThisModule};
378586f1acSBenno Lossin 
388586f1acSBenno Lossin pub use super::init::{InPlaceInit, Init, PinInit};
398da7a2b7SWedson Almeida Filho 
408da7a2b7SWedson Almeida Filho pub use super::current;
41