use crate::{ArrayLength, GenericArray}; | |
use zeroize::Zeroize; | |
impl<T: Zeroize, N: ArrayLength<T>> Zeroize for GenericArray<T, N> { | |
fn zeroize(&mut self) { | |
self.as_mut_slice().iter_mut().zeroize() | |
} | |
} | |
#[cfg(test)] | |
mod tests { | |
use super::*; | |
#[test] | |
fn test_zeroize() { | |
let mut array = GenericArray::<u8, typenum::U2>::default(); | |
array[0] = 4; | |
array[1] = 9; | |
array.zeroize(); | |
assert_eq!(array[0], 0); | |
assert_eq!(array[1], 0); | |
} | |
} |