Struct ModifyOptionsBuilder

Source
pub struct ModifyOptionsBuilder(/* private fields */);
Expand description

Utility used to create a ModifyOptions instance.

The following example creates a ModifyOptions instance, which changes the password of the container:

let options = nuts_container::ModifyOptionsBuilder::default()
    .change_password(|| Ok(b"123".to_vec()));

Implementations§

Source§

impl ModifyOptionsBuilder

Source

pub fn change_kdf(self, kdf: Kdf) -> Self

Changes the key derivation function of the container.

Notes

  • If encryption is deactivated, the key derivation function is permanently set to Kdf::None. It cannot be changed.
  • If encryption is activated, the key derivation function cannot be set to Kdf::None.

For both exceptions the kdf passed to the method is ignored.

Source

pub fn change_password<Cb: Fn() -> Result<Vec<u8>, String> + 'static>( self, callback: Cb, ) -> Self

Change the password of the container.

Use the given callback which returns the new password on success. If encryption is disabled the callback is not invoked.

On success the callback returns the password (represented as an Vec<u8>) wrapped into an Ok. On any failure an Err with an error message must be returned.

Source

pub fn build(self) -> ModifyOptions

Finally, creates the ModifyOptions instance.

Trait Implementations§

Source§

impl Default for ModifyOptionsBuilder

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

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, U> TryFrom<U> for T
where U: Into<T>,

Source§

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>,

Source§

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.