#![feature(prelude_import)] #[prelude_import] use std::prelude::rust_2021::*; #[macro_use] extern crate std; pub mod remote { pub struct Inner(pub Box<u8>); } pub mod remote_inner_heap_size { use heapsz::HeapSize; use super::remote; pub fn heap_size(t: &remote::Inner) -> usize { t.0.heap_size() } } pub struct With { #[heap_size(with = "remote_inner_heap_size")] pub inner: remote::Inner, } impl ::heapsz::HeapSize for With { fn heap_size(&self) -> usize { 0 + remote_inner_heap_size::heap_size(&self.inner) } } fn main() {}