[][src]Struct sequoia_openpgp::serialize::stream::Compressor

pub struct Compressor<'a> { /* fields omitted */ }

Compresses a packet stream.

Writes a compressed data packet containing all packets written to this writer.

Example

extern crate sequoia_openpgp as openpgp;
use std::io::Write;
use openpgp::serialize::stream::{Message, Compressor, LiteralWriter};
use openpgp::types::CompressionAlgorithm;

let mut o = vec![];
{
    let message = Message::new(&mut o);
    let w = Compressor::new(message)
        .algo(CompressionAlgorithm::Uncompressed).build()?;
    let mut w = LiteralWriter::new(w).build()?;
    w.write_all(b"Hello world.")?;
    w.finalize()?;
}
assert_eq!(b"\xc8\x15\x00\xcb\x12b\x00\x00\x00\x00\x00Hello world.",
           o.as_slice());

Methods

impl<'a> Compressor<'a>[src]

pub fn new(inner: Stack<'a, Cookie>) -> Self[src]

Creates a new compressor using the given algorithm.

Passing None to compression_level selects the default compression level.

pub fn algo(self, algo: CompressionAlgorithm) -> Self[src]

Sets the compression algorithm.

pub fn level(self, level: CompressionLevel) -> Self[src]

Sets the compression level.

pub fn build(self) -> Result<Stack<'a, Cookie>>[src]

Finalizes the literal writer, returning the writer stack.

format, filename, and date will be emitted as part of the literal packets headers. Note that these headers will not be authenticated by signatures (but will be authenticated by a SEIP/MDC container), and are therefore unreliable and should not be trusted.

Trait Implementations

impl<'a> Debug for Compressor<'a>[src]

impl<'a> Write for Compressor<'a>[src]

fn write_vectored(&mut self, bufs: &[IoVec]) -> Result<usize, Error>[src]

🔬 This is a nightly-only experimental API. (iovec)

Like write, except that it writes from a slice of buffers. Read more

fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
1.0.0
[src]

Attempts to write an entire buffer into this writer. Read more

fn write_fmt(&mut self, fmt: Arguments) -> Result<(), Error>
1.0.0
[src]

Writes a formatted string into this writer, returning any error encountered. Read more

fn by_ref(&mut self) -> &mut Self
1.0.0
[src]

Creates a "by reference" adaptor for this instance of Write. Read more

Auto Trait Implementations

impl<'a> !Send for Compressor<'a>

impl<'a> !Sync for Compressor<'a>

Blanket Implementations

impl<T> From for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

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

impl<T, U> TryInto 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 for T where
    V: MultiLane<T>,