summaryrefslogtreecommitdiff
path: root/rust/kernel/list.rs
diff options
context:
space:
mode:
authorAlice Ryhl <aliceryhl@google.com>2024-08-14 08:05:24 +0000
committerMiguel Ojeda <ojeda@kernel.org>2024-08-23 06:26:57 +0200
commit40c53294596b4a7fe2ae126d7aab986752496c31 (patch)
tree35c7d99b6e6496841a9246928aa21a28f1e49eca /rust/kernel/list.rs
parent14176295fe56ce9506e650dce436d2bdadec93b5 (diff)
rust: list: add macro for implementing ListItem
Adds a macro for safely implementing the ListItem trait. As part of the implementation of the macro, we also provide a HasListLinks trait similar to the workqueue's HasWorkItem trait. The HasListLinks trait is only necessary if you are implementing ListItem using the impl_list_item macro. Reviewed-by: Benno Lossin <benno.lossin@proton.me> Signed-off-by: Alice Ryhl <aliceryhl@google.com> Link: https://lore.kernel.org/r/20240814-linked-list-v5-5-f5f5e8075da0@google.com Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Diffstat (limited to 'rust/kernel/list.rs')
-rw-r--r--rust/kernel/list.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/rust/kernel/list.rs b/rust/kernel/list.rs
index 074ae863ff5a..670d53989b8f 100644
--- a/rust/kernel/list.rs
+++ b/rust/kernel/list.rs
@@ -8,6 +8,9 @@ use crate::init::PinInit;
use crate::types::Opaque;
use core::ptr;
+mod impl_list_item_mod;
+pub use self::impl_list_item_mod::{impl_has_list_links, impl_list_item, HasListLinks};
+
mod arc;
pub use self::arc::{impl_list_arc_safe, AtomicTracker, ListArc, ListArcSafe, TryNewListArc};