diff --git a/src/adapter.rs b/src/adapter.rs index 8c41bbd..6f112ac 100644 --- a/src/adapter.rs +++ b/src/adapter.rs @@ -277,6 +277,7 @@ macro_rules! intrusive_adapter { #[cfg(test)] mod tests { use crate::LinkedListLink; + use core::cell::UnsafeCell; use std::rc::Rc; struct Obj { @@ -287,6 +288,10 @@ mod tests { obj: Obj, } + struct IndirectWrapper { + cell: UnsafeCell, + } + intrusive_adapter! { /// Test doc comment ObjAdapter1 = Rc: Obj { link => LinkedListLink } @@ -299,6 +304,6 @@ mod tests { intrusive_adapter! { /// Test doc comment - WrapperAdapter2 = Rc: Wrapper { ?offset = crate::offset_of!(Wrapper, obj) + crate::offset_of!(Obj, link) => LinkedListLink } + IndirectWrapperAdapter1 = Rc: Wrapper { ?offset = crate::offset_of!(IndirectWrapper, cell) + crate::offset_of!(Obj, link) => LinkedListLink } } }