MCPcopy Create free account
hub / github.com/RustCrypto/utils / derive_deref

Function derive_deref

zeroize/tests/zeroize_derive.rs:295–320  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

293
294#[test]
295fn derive_deref() {
296 struct X([u8; 3]);
297
298 impl core::ops::Deref for X {
299 type Target = [u8];
300
301 fn deref(&self) -> &Self::Target {
302 &self.0
303 }
304 }
305
306 impl core::ops::DerefMut for X {
307 fn deref_mut(&mut self) -> &mut Self::Target {
308 &mut self.0
309 }
310 }
311
312 #[derive(Zeroize, ZeroizeOnDrop)]
313 struct Z(X);
314
315 let mut value = Z(X([1, 2, 3]));
316 unsafe {
317 ptr::drop_in_place(&raw mut value);
318 }
319 assert_eq!(&value.0.0, &[0, 0, 0]);
320}
321
322#[test]
323#[cfg(feature = "alloc")]

Callers

nothing calls this directly

Calls 2

XClass · 0.85
ZClass · 0.70

Tested by

no test coverage detected