use secure_types::SecureVec;
fn main() {
let exposed_vec = vec![1, 2, 3];
let mut secure_vec = SecureVec::from_vec(exposed_vec).unwrap();
secure_vec.unlock_slice(|unlocked_slice| {
assert_eq!(unlocked_slice, &[1, 2, 3]);
println!("The secret is: {:?}", unlocked_slice);
});
secure_vec.push(4);
secure_vec.unlock_slice(|unlocked_slice| {
assert_eq!(unlocked_slice, &[1, 2, 3, 4]);
println!("The secret is: {:?}", unlocked_slice);
});
let _ = secure_vec[0];
}