mirror of
				https://github.com/torvalds/linux.git
				synced 2025-10-31 16:48:26 +02:00 
			
		
		
		
	 897d1df653
			
		
	
	
		897d1df653
		
	
	
	
	
		
			
			It is convenient to have certain things in the `kernel` prelude, and means kernel developers will find it even easier to start writing tests. And, anyway, nobody should need to use this identifier for anything else. Thus add it to the prelude. Reviewed-by: David Gow <davidgow@google.com> Acked-by: Danilo Krummrich <dakr@kernel.org> Link: https://lore.kernel.org/r/20250502215133.1923676-4-ojeda@kernel.org Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
		
			
				
	
	
		
			48 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
	
		
			1.3 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::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,
 | |
| };
 | |
| 
 | |
| pub use crate::alloc::{flags::*, Box, KBox, KVBox, KVVec, KVec, VBox, VVec, Vec};
 | |
| 
 | |
| #[doc(no_inline)]
 | |
| pub use macros::{export, kunit_tests, module, vtable};
 | |
| 
 | |
| pub use pin_init::{init, pin_data, pin_init, pinned_drop, InPlaceWrite, Init, PinInit, Zeroable};
 | |
| 
 | |
| pub use super::{build_assert, build_error};
 | |
| 
 | |
| // `super::std_vendor` is hidden, which makes the macro inline for some reason.
 | |
| #[doc(no_inline)]
 | |
| pub use super::dbg;
 | |
| pub use super::fmt;
 | |
| pub use super::{dev_alert, dev_crit, dev_dbg, dev_emerg, dev_err, dev_info, dev_notice, dev_warn};
 | |
| pub use super::{pr_alert, pr_crit, pr_debug, pr_emerg, pr_err, pr_info, pr_notice, pr_warn};
 | |
| 
 | |
| pub use super::{try_init, try_pin_init};
 | |
| 
 | |
| pub use super::static_assert;
 | |
| 
 | |
| pub use super::error::{code::*, Error, Result};
 | |
| 
 | |
| pub use super::{str::CStr, ThisModule};
 | |
| 
 | |
| pub use super::init::InPlaceInit;
 | |
| 
 | |
| pub use super::current;
 |