[][src]Struct sequoia_openpgp::cert::amalgamation::ComponentAmalgamation

pub struct ComponentAmalgamation<'a, C> { /* fields omitted */ }

A certificate's component and its associated data.

Implementations

impl<'a, P, R> ComponentAmalgamation<'a, Key<P, R>> where
    P: KeyParts,
    R: KeyRole
[src]

pub fn parts_into_public(self) -> ComponentAmalgamation<'a, Key<PublicParts, R>>[src]

Changes the key's parts tag to PublicParts.

pub fn parts_as_public(
    &'a self
) -> &'a ComponentAmalgamation<'a, Key<PublicParts, R>>
[src]

Changes the key's parts tag to PublicParts.

pub fn parts_into_secret(
    self
) -> Result<ComponentAmalgamation<'a, Key<SecretParts, R>>>
[src]

Changes the key's parts tag to SecretParts.

pub fn parts_as_secret(
    &'a self
) -> Result<&'a ComponentAmalgamation<'a, Key<SecretParts, R>>>
[src]

Changes the key's parts tag to SecretParts.

pub fn parts_into_unspecified(
    self
) -> ComponentAmalgamation<'a, Key<UnspecifiedParts, R>>
[src]

Changes the key's parts tag to UnspecifiedParts.

pub fn parts_as_unspecified(
    &'a self
) -> &ComponentAmalgamation<'a, Key<UnspecifiedParts, R>>
[src]

Changes the key's parts tag to UnspecifiedParts.

impl<'a, P, R> ComponentAmalgamation<'a, Key<P, R>> where
    P: KeyParts,
    R: KeyRole
[src]

pub fn mark_role_primary(self) -> ComponentAmalgamation<'a, Key<P, PrimaryRole>>[src]

Changes the key's role tag to PrimaryRole.

pub fn mark_role_primary_ref(
    &'a self
) -> &'a ComponentAmalgamation<'a, Key<P, PrimaryRole>>
[src]

Changes the key's role tag to PrimaryRole.

pub fn mark_role_subordinate(
    self
) -> ComponentAmalgamation<'a, Key<P, SubordinateRole>>
[src]

Changes the key's role tag to SubordinateRole.

pub fn mark_role_subordinate_ref(
    &'a self
) -> &'a ComponentAmalgamation<'a, Key<P, SubordinateRole>>
[src]

Changes the key's role tag to SubordinateRole.

pub fn mark_role_unspecified(
    self
) -> ComponentAmalgamation<'a, Key<P, UnspecifiedRole>>
[src]

Changes the key's role tag to UnspecifiedRole.

pub fn mark_role_unspecified_ref(
    &'a self
) -> &'a ComponentAmalgamation<'a, Key<P, UnspecifiedRole>>
[src]

Changes the key's role tag to UnspecifiedRole.

impl<'a, C> ComponentAmalgamation<'a, C>[src]

pub fn cert(&self) -> &'a Cert[src]

Returns the certificate that the component came from.

pub fn bundle(&self) -> &'a ComponentBundle<C>[src]

Returns this amalgamation's bundle.

Note: although Amalgamation derefs to a ComponentBundle, this method provides a more accurate lifetime, which is helpful when returning the reference from a function.

Consider the following, which doesn't work:

This example deliberately fails to compile
use openpgp::cert::prelude::*;
use openpgp::packet::prelude::*;

cert.keys()
    .map(|ka| {
        let b : &KeyBundle<_, _> = &ka;
        b
    })
    .collect::<Vec<&KeyBundle<_, _>>>();

Compiling the above code results in the following error:

b returns a value referencing data owned by the current function

This error occurs because the Deref trait says that the lifetime of the target, i.e., &KeyBundle, is bounded by ka's lifetime, whose lifetime is indeed limited to the closure. But, &KeyBundle is independent of ka! It is a copy of the KeyAmalgamation's reference to the KeyBundle whose lifetime is 'a. Unfortunately, this can't be expressed using Deref, but it can be done using a separate method:

use openpgp::cert::prelude::*;
use openpgp::packet::prelude::*;

cert.keys().map(|ka| ka.bundle())
    .collect::<Vec<&KeyBundle<_, _>>>();

pub fn component(&self) -> &'a C[src]

Returns this amalgamation's component.

Note: although Amalgamation derefs to a Component (via ComponentBundle), this method provides a more accurate lifetime, which is helpful when returning the reference from a function.

Consider the following, which doesn't work:

This example deliberately fails to compile
use openpgp::cert::prelude::*;
use openpgp::packet::prelude::*;

cert.keys()
    .map(|ka| {
        let k : &Key<_, _> = &ka;
        k
    })
    .collect::<Vec<&Key<_, _>>>();

Compiling the above code results in the following error:

k returns a value referencing data owned by the current function

This error occurs because the Deref trait says that the lifetime of the target, i.e., &Key, is bounded by the ka's lifetime, whose lifetime is indeed limited to the closure. But, &Key is independent of ka! It is a copy of the KeyAmalgamation's reference to the Key whose lifetime is 'a. Unfortunately, this can't be expressed using Deref, but it can be done using a separate method:

use openpgp::cert::prelude::*;
use openpgp::packet::prelude::*;

cert.keys().map(|ka| ka.key())
    .collect::<Vec<&Key<_, _>>>();

impl<'a> ComponentAmalgamation<'a, UserID>[src]

pub fn userid(&self) -> &'a UserID[src]

Returns a reference to the User ID.

impl<'a> ComponentAmalgamation<'a, UserAttribute>[src]

pub fn user_attribute(&self) -> &'a UserAttribute[src]

Returns a reference to the User Attribute.

Methods from Deref<Target = ComponentBundle<C>>

pub fn parts_as_public(&self) -> &KeyBundle<PublicParts, R>[src]

Changes the key's parts tag to PublicParts.

pub fn parts_as_secret(&self) -> Result<&KeyBundle<SecretParts, R>>[src]

Changes the key's parts tag to SecretParts.

pub fn parts_as_unspecified(&self) -> &KeyBundle<UnspecifiedParts, R>[src]

Changes the key's parts tag to UnspecifiedParts.

pub fn mark_role_primary_ref(&self) -> &KeyBundle<P, PrimaryRole>[src]

Changes the key's role tag to PrimaryRole.

pub fn mark_role_subordinate_ref(&self) -> &KeyBundle<P, SubordinateRole>[src]

Changes the key's role tag to SubordinateRole.

pub fn mark_role_unspecified_ref(&self) -> &KeyBundle<P, UnspecifiedRole>[src]

Changes the key's role tag to UnspecifiedRole.

pub fn component(&self) -> &C[src]

Returns a reference to the component.

pub fn binding_signature<T>(
    &self,
    policy: &dyn Policy,
    t: T
) -> Result<&Signature> where
    T: Into<Option<SystemTime>>, 
[src]

Returns the active binding signature at time t.

An active binding signature is a non-revoked, self-signature that is alive at time t (creation time <= t, t < expiry).

This function returns an error if there are no active binding signatures at time t, or there is one that did not match the given policy.

pub fn self_signatures(&self) -> &[Signature][src]

The self-signatures.

The signatures are validated, and they are reverse sorted by their creation time (newest first).

pub fn certifications(&self) -> &[Signature][src]

Any third-party certifications.

The signatures are not validated. They are reverse sorted by their creation time (newest first).

pub fn self_revocations(&self) -> &[Signature][src]

Revocations issued by the key itself.

The revocations are validated, and they are reverse sorted by their creation time (newest first).

pub fn other_revocations(&self) -> &[Signature][src]

Revocations issued by other keys.

The revocations are not validated. They are reverse sorted by their creation time (newest first).

pub fn key(&self) -> &Key<P, R>[src]

Returns a reference to the key.

pub fn revoked<T>(&self, policy: &dyn Policy, t: T) -> RevocationStatus where
    T: Into<Option<SystemTime>>, 
[src]

Returns the subkey's revocation status at time t.

A subkey is revoked at time t if:

  • There is a live revocation at time t that is newer than all live self signatures at time t, or

  • There is a hard revocation (even if it is not live at time t, and even if there is a newer self-signature).

Note: Certs and subkeys have different criteria from User IDs and User Attributes.

Note: this only returns whether this subkey is revoked; it does not imply anything about the Cert or other components.

pub fn userid(&self) -> &UserID[src]

Returns a reference to the User ID.

pub fn revoked<T>(&self, policy: &dyn Policy, t: T) -> RevocationStatus where
    T: Into<Option<SystemTime>>, 
[src]

Returns the User ID's revocation status at time t.

A User ID is revoked at time t if:

  • There is a live revocation at time t that is newer than all live self signatures at time t, or

Note: Certs and subkeys have different criteria from User IDs and User Attributes.

Note: this only returns whether this User ID is revoked; it does not imply anything about the Cert or other components.

pub fn user_attribute(&self) -> &UserAttribute[src]

Returns a reference to the User Attribute.

pub fn revoked<T>(&self, policy: &dyn Policy, t: T) -> RevocationStatus where
    T: Into<Option<SystemTime>>, 
[src]

Returns the User Attribute's revocation status at time t.

A User Attribute is revoked at time t if:

  • There is a live revocation at time t that is newer than all live self signatures at time t, or

Note: Certs and subkeys have different criteria from User IDs and User Attributes.

Note: this only returns whether this User Attribute is revoked; it does not imply anything about the Cert or other components.

pub fn unknown(&self) -> &Unknown[src]

Returns a reference to the unknown component.

Trait Implementations

impl<'a, C> Clone for ComponentAmalgamation<'a, C>[src]

impl<'a, C: Debug> Debug for ComponentAmalgamation<'a, C>[src]

impl<'a, C> Deref for ComponentAmalgamation<'a, C>[src]

type Target = ComponentBundle<C>

The resulting type after dereferencing.

impl<'a, P> From<&'a ComponentAmalgamation<'a, Key<P, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<P, SubordinateRole>> where
    P: KeyParts
[src]

impl<'a, P> From<&'a ComponentAmalgamation<'a, Key<P, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<P, UnspecifiedRole>> where
    P: KeyParts
[src]

impl<'a, P> From<&'a ComponentAmalgamation<'a, Key<P, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<P, PrimaryRole>> where
    P: KeyParts
[src]

impl<'a, P> From<&'a ComponentAmalgamation<'a, Key<P, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<P, UnspecifiedRole>> where
    P: KeyParts
[src]

impl<'a, P> From<&'a ComponentAmalgamation<'a, Key<P, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<P, PrimaryRole>> where
    P: KeyParts
[src]

impl<'a, P> From<&'a ComponentAmalgamation<'a, Key<P, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<P, SubordinateRole>> where
    P: KeyParts
[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>[src]

impl<'a, R> From<&'a ComponentAmalgamation<'a, Key<PublicParts, R>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, R>> where
    R: KeyRole
[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>[src]

impl<'a, R> From<&'a ComponentAmalgamation<'a, Key<SecretParts, R>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, R>> where
    R: KeyRole
[src]

impl<'a, R> From<&'a ComponentAmalgamation<'a, Key<SecretParts, R>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, R>> where
    R: KeyRole
[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>[src]

impl<'a, R> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, R>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, R>> where
    R: KeyRole
[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>[src]

impl<'a> From<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>[src]

impl<'a, P> From<ComponentAmalgamation<'a, Key<P, PrimaryRole>>> for ComponentAmalgamation<'a, Key<P, SubordinateRole>> where
    P: KeyParts
[src]

impl<'a, P> From<ComponentAmalgamation<'a, Key<P, PrimaryRole>>> for ComponentAmalgamation<'a, Key<P, UnspecifiedRole>> where
    P: KeyParts
[src]

impl<'a, P> From<ComponentAmalgamation<'a, Key<P, SubordinateRole>>> for ComponentAmalgamation<'a, Key<P, PrimaryRole>> where
    P: KeyParts
[src]

impl<'a, P> From<ComponentAmalgamation<'a, Key<P, SubordinateRole>>> for ComponentAmalgamation<'a, Key<P, UnspecifiedRole>> where
    P: KeyParts
[src]

impl<'a, P> From<ComponentAmalgamation<'a, Key<P, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<P, PrimaryRole>> where
    P: KeyParts
[src]

impl<'a, P> From<ComponentAmalgamation<'a, Key<P, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<P, SubordinateRole>> where
    P: KeyParts
[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>[src]

impl<'a, R> From<ComponentAmalgamation<'a, Key<PublicParts, R>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, R>> where
    R: KeyRole
[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>[src]

impl<'a, R> From<ComponentAmalgamation<'a, Key<SecretParts, R>>> for ComponentAmalgamation<'a, Key<PublicParts, R>> where
    R: KeyRole
[src]

impl<'a, R> From<ComponentAmalgamation<'a, Key<SecretParts, R>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, R>> where
    R: KeyRole
[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, PrimaryRole>>> for ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>[src]

impl<'a, R> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, R>>> for ComponentAmalgamation<'a, Key<PublicParts, R>> where
    R: KeyRole
[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<PublicParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, SubordinateRole>>> for ComponentAmalgamation<'a, Key<SecretParts, UnspecifiedRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<PublicParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<PublicParts, SubordinateRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<SecretParts, PrimaryRole>>[src]

impl<'a> From<ComponentAmalgamation<'a, Key<UnspecifiedParts, UnspecifiedRole>>> for ComponentAmalgamation<'a, Key<SecretParts, SubordinateRole>>[src]

impl<'a, C: 'a> From<ValidComponentAmalgamation<'a, C>> for ComponentAmalgamation<'a, C>[src]

impl<'a, C: PartialEq> PartialEq<ComponentAmalgamation<'a, C>> for ComponentAmalgamation<'a, C>[src]

impl<'a, C> StructuralPartialEq for ComponentAmalgamation<'a, C>[src]

impl<'a, R> TryFrom<&'a ComponentAmalgamation<'a, Key<PublicParts, R>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, R>> where
    R: KeyRole
[src]

type Error = Error

The type returned in the event of a conversion error.

impl<'a, R> TryFrom<&'a ComponentAmalgamation<'a, Key<UnspecifiedParts, R>>> for &'a ComponentAmalgamation<'a, Key<SecretParts, R>> where
    R: KeyRole
[src]

type Error = Error

The type returned in the event of a conversion error.

impl<'a, R> TryFrom<ComponentAmalgamation<'a, Key<PublicParts, R>>> for ComponentAmalgamation<'a, Key<SecretParts, R>> where
    R: KeyRole
[src]

type Error = Error

The type returned in the event of a conversion error.

impl<'a, R> TryFrom<ComponentAmalgamation<'a, Key<UnspecifiedParts, R>>> for ComponentAmalgamation<'a, Key<SecretParts, R>> where
    R: KeyRole
[src]

type Error = Error

The type returned in the event of a conversion error.

impl<'a, C> ValidateAmalgamation<'a, C> for ComponentAmalgamation<'a, C>[src]

type V = ValidComponentAmalgamation<'a, C>

The type returned by with_policy.

Auto Trait Implementations

impl<'a, C> RefUnwindSafe for ComponentAmalgamation<'a, C> where
    C: RefUnwindSafe

impl<'a, C> Send for ComponentAmalgamation<'a, C> where
    C: Sync

impl<'a, C> Sync for ComponentAmalgamation<'a, C> where
    C: Sync

impl<'a, C> Unpin for ComponentAmalgamation<'a, C>

impl<'a, C> UnwindSafe for ComponentAmalgamation<'a, C> where
    C: RefUnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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