pub struct ZeroizeByte(/* private fields */);
Expand description

This a byte that is zeroed out when dropped from memory.

Structure
pub struct ZeroizeByte(u8);

Implementations§

source§

impl ZeroizeByte

source

pub fn new(value: u8) -> Self

Initialize a ZeroizeByte with the value of specified by byte

source

pub fn new_zeroed() -> Self

Initialize a new byte which is zeroed byte

source

pub fn set(&mut self, value: u8) -> &mut Self

File the current array with new values specified by the method parameter value: u8

source

pub fn expose_borrowed(&self) -> &u8

Expose the internal as an borrowed byte

source

pub fn own(self) -> Self

Own this array

source

pub fn csprng() -> Self

Generate some random byte and initialize an new ZeroizeByte in the process.

Trait Implementations§

source§

impl BorshDeserialize for ZeroizeByte

source§

fn deserialize_reader<R: Read>(reader: &mut R) -> Result<Self, Error>

source§

fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>

Deserializes this instance from a given slice of bytes. Updates the buffer to point at the remaining bytes.
source§

fn try_from_slice(v: &[u8]) -> Result<Self, Error>

Deserialize this instance from a slice of bytes.
source§

fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>
where R: Read,

source§

impl BorshSerialize for ZeroizeByte

source§

fn serialize<W: Write>(&self, writer: &mut W) -> Result<(), Error>

source§

impl Debug for ZeroizeByte

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Drop for ZeroizeByte

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl PartialEq for ZeroizeByte

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Zeroize for ZeroizeByte

source§

fn zeroize(&mut self)

Zero out this object from memory using Rust intrinsics which ensure the zeroization operation is not “optimized away” by the compiler.
source§

impl Eq for ZeroizeByte

source§

impl ZeroizeOnDrop for ZeroizeByte

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V