logo
pub trait Marshal: Sealed {
    fn serialize(&self, o: &mut dyn Write) -> Result<()>;

    fn export(&self, o: &mut dyn Write) -> Result<()> { ... }
}
Expand description

Serializes OpenPGP data structures.

This trait provides the same interface as Serialize, but is implemented for all data structures that can be serialized.

In general, you should prefer the Serialize trait, as it is only implemented for data structures that are normally exported. See the documentation for Serialize for more details.

Sealed trait

This trait is sealed and cannot be implemented for types outside this crate. Therefore it can be extended in a non-breaking way. If you want to implement the trait inside the crate you also need to implement the seal::Sealed marker trait.

Required methods

Writes a serialized version of the object to o.

Provided methods

Exports a serialized version of the object to o.

This is similar to serialize(..), with these exceptions:

  • It is an error to export a Signature if it is marked as non-exportable.
  • When exporting a Cert, non-exportable signatures are not exported, and any component bound merely by non-exportable signatures is not exported.

Implementors