mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
Format the Rust prelude to use the "kernel vertical" imports style [1]. No functional changes intended. Link: https://docs.kernel.org/rust/coding-guidelines.html#imports [1] Link: https://patch.msgid.link/20260208224659.18406-2-ojeda@kernel.org [ Rebased. - Miguel ] Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
113 lines
1.7 KiB
Rust
113 lines
1.7 KiB
Rust
// SPDX-License-Identifier: GPL-2.0
|
|
|
|
//! The `kernel` prelude.
|
|
//!
|
|
//! These are the most common items used by Rust code in the kernel,
|
|
//! intended to be imported by all Rust code, for convenience.
|
|
//!
|
|
//! # Examples
|
|
//!
|
|
//! ```
|
|
//! use kernel::prelude::*;
|
|
//! ```
|
|
|
|
#[doc(no_inline)]
|
|
pub use core::{
|
|
mem::{
|
|
align_of,
|
|
align_of_val,
|
|
size_of,
|
|
size_of_val, //
|
|
},
|
|
pin::Pin, //
|
|
};
|
|
|
|
pub use ::ffi::{
|
|
c_char,
|
|
c_int,
|
|
c_long,
|
|
c_longlong,
|
|
c_schar,
|
|
c_short,
|
|
c_uchar,
|
|
c_uint,
|
|
c_ulong,
|
|
c_ulonglong,
|
|
c_ushort,
|
|
c_void,
|
|
CStr, //
|
|
};
|
|
|
|
#[doc(no_inline)]
|
|
pub use macros::{
|
|
export,
|
|
fmt,
|
|
kunit_tests,
|
|
module,
|
|
vtable, //
|
|
};
|
|
|
|
pub use pin_init::{
|
|
init,
|
|
pin_data,
|
|
pin_init,
|
|
pinned_drop,
|
|
InPlaceWrite,
|
|
Init,
|
|
PinInit,
|
|
Zeroable, //
|
|
};
|
|
|
|
pub use super::{
|
|
alloc::{
|
|
flags::*,
|
|
Box,
|
|
KBox,
|
|
KVBox,
|
|
KVVec,
|
|
KVec,
|
|
VBox,
|
|
VVec,
|
|
Vec, //
|
|
},
|
|
build_assert,
|
|
build_error,
|
|
const_assert,
|
|
current,
|
|
dev_alert,
|
|
dev_crit,
|
|
dev_dbg,
|
|
dev_emerg,
|
|
dev_err,
|
|
dev_info,
|
|
dev_notice,
|
|
dev_warn,
|
|
error::{
|
|
code::*,
|
|
Error,
|
|
Result, //
|
|
},
|
|
init::InPlaceInit,
|
|
pr_alert,
|
|
pr_crit,
|
|
pr_debug,
|
|
pr_emerg,
|
|
pr_err,
|
|
pr_info,
|
|
pr_notice,
|
|
pr_warn,
|
|
static_assert,
|
|
str::CStrExt as _,
|
|
try_init,
|
|
try_pin_init,
|
|
uaccess::UserPtr,
|
|
ThisModule, //
|
|
};
|
|
|
|
// `super::std_vendor` is hidden, which makes the macro inline for some reason.
|
|
#[doc(no_inline)]
|
|
pub use super::dbg;
|
|
|
|
#[cfg(not(CONFIG_RUSTC_HAS_SLICE_AS_FLATTENED))]
|
|
pub use super::slice::AsFlattened;
|