[][src]Enum sequoia_openpgp::types::CompressionAlgorithm

pub enum CompressionAlgorithm {
    Uncompressed,
    Zip,
    Zlib,
    BZip2,
    Private(u8),
    Unknown(u8),
    // some variants omitted
}

The OpenPGP compression algorithms as defined in Section 9.3 of RFC 4880.

Note: This enum cannot be exhaustively matched to allow future extensions.

Examples

Use CompressionAlgorithm to set the preferred compressions algorithms on a signature:

use sequoia_openpgp as openpgp;
use openpgp::packet::signature::SignatureBuilder;
use openpgp::types::{HashAlgorithm, CompressionAlgorithm, SignatureType};

let mut builder = SignatureBuilder::new(SignatureType::DirectKey)
    .set_hash_algo(HashAlgorithm::SHA512)
    .set_preferred_compression_algorithms(vec![
        CompressionAlgorithm::Zlib,
        CompressionAlgorithm::BZip2,
    ])?;

Variants

Uncompressed

Null compression.

Zip

DEFLATE Compressed Data.

See RFC 1951 for details. Section 9.3 of RFC 4880 recommends that this algorithm should be implemented.

Zlib

ZLIB Compressed Data.

See RFC 1950 for details.

BZip2

bzip2

Private(u8)

Private compression algorithm identifier.

Unknown(u8)

Unknown compression algorithm identifier.

Methods

impl CompressionAlgorithm[src]

pub fn is_supported(&self) -> bool[src]

Returns whether this algorithm is supported.

Examples

use sequoia_openpgp as openpgp;
use openpgp::types::CompressionAlgorithm;

assert!(CompressionAlgorithm::Uncompressed.is_supported());
assert!(CompressionAlgorithm::Zip.is_supported());

assert!(!CompressionAlgorithm::Private(101).is_supported());

Trait Implementations

impl Clone for CompressionAlgorithm[src]

impl Copy for CompressionAlgorithm[src]

impl Debug for CompressionAlgorithm[src]

impl Default for CompressionAlgorithm[src]

impl Display for CompressionAlgorithm[src]

impl Eq for CompressionAlgorithm[src]

impl From<CompressionAlgorithm> for u8[src]

impl From<u8> for CompressionAlgorithm[src]

impl Hash for CompressionAlgorithm[src]

impl Ord for CompressionAlgorithm[src]

impl PartialEq<CompressionAlgorithm> for CompressionAlgorithm[src]

impl PartialOrd<CompressionAlgorithm> for CompressionAlgorithm[src]

impl StructuralEq for CompressionAlgorithm[src]

impl StructuralPartialEq for CompressionAlgorithm[src]

Auto Trait Implementations

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> DynClone for T where
    T: Clone
[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> ToString for T where
    T: Display + ?Sized
[src]

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.