Struct sequoia_openpgp::packet::CompressedData

source ·
pub struct CompressedData { /* private fields */ }
Expand description

Holds a compressed data packet.

A compressed data packet is a container. See Section 5.6 of RFC 4880 for details.

When the parser encounters a compressed data packet with an unknown compress algorithm, it returns an Unknown packet instead of a CompressedData packet.

Implementations§

source§

impl CompressedData

source

pub fn new(algo: CompressionAlgorithm) -> Self

Returns a new CompressedData packet.

source

pub fn algo(&self) -> CompressionAlgorithm

Gets the compression algorithm.

source

pub fn set_algo(&mut self, algo: CompressionAlgorithm) -> CompressionAlgorithm

Sets the compression algorithm.

Methods from Deref<Target = Container>§

source

pub fn children_ref(&self) -> Option<&[Packet]>

Returns a reference to this Packet’s children.

Returns None if the body is not structured.

source

pub fn children_mut(&mut self) -> Option<&mut Vec<Packet>>

Returns a mutable reference to this Packet’s children.

Returns None if the body is not structured.

source

pub fn descendants(&self) -> Option<Iter<'_>>

Returns an iterator over the packet’s descendants. The descendants are visited in depth-first order.

Returns None if the body is not structured.

source

pub fn children(&self) -> Option<Iter<'_, Packet>>

Returns an iterator over the packet’s immediate children.

Returns None if the body is not structured.

source

pub fn body(&self) -> &Body

Gets the packet’s body.

source

pub fn set_body(&mut self, body: Body) -> Body

Sets the packet’s body.

Trait Implementations§

source§

impl Any<CompressedData> for Packet

source§

fn downcast(self) -> Result<CompressedData, Packet>

Attempts to downcast to T, returning the packet if it fails. Read more
source§

fn downcast_ref(&self) -> Option<&CompressedData>

Attempts to downcast to &T, returning None if it fails. Read more
source§

fn downcast_mut(&mut self) -> Option<&mut CompressedData>

Attempts to downcast to &mut T, returning None if it fails. Read more
source§

impl Clone for CompressedData

source§

fn clone(&self) -> CompressedData

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CompressedData

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl DerefMut for CompressedData

source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.
source§

impl From<CompressedData> for Packet

source§

fn from(s: CompressedData) -> Self

Converts to this type from the input type.
source§

impl Hash for CompressedData

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl IntoIterator for CompressedData

Implement IntoIterator so that cert::insert_packets(sig) just works.

§

type Item = CompressedData

The type of the elements being iterated over.
§

type IntoIter = Once<CompressedData>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl Marshal for CompressedData

source§

fn serialize(&self, o: &mut dyn Write) -> Result<()>

Writes a serialized version of the specified CompressedData packet to o.

This function works recursively: if the CompressedData packet contains any packets, they are also serialized.

source§

fn export(&self, o: &mut dyn Write) -> Result<()>

Exports a serialized version of the object to o. Read more
source§

impl MarshalInto for CompressedData

source§

fn serialized_len(&self) -> usize

Computes the maximal length of the serialized representation.

The size of the serialized compressed data packet is tricky to predict. First, it depends on the data being compressed. Second, we emit partial body encoded data.

This function tries overestimates the length. However, it may happen that serialize_into() fails.

§Errors

If serialization would fail, this function returns 0.

source§

fn serialize_into(&self, buf: &mut [u8]) -> Result<usize>

Serializes into the given buffer. Read more
source§

fn to_vec(&self) -> Result<Vec<u8>>

Serializes the packet to a vector.
source§

fn export_into(&self, buf: &mut [u8]) -> Result<usize>

Exports into the given buffer. Read more
source§

fn export_to_vec(&self) -> Result<Vec<u8>>

Exports to a vector. Read more
source§

impl<'a> Parse<'a, CompressedData> for CompressedData

source§

fn from_buffered_reader<R>(reader: R) -> Result<Self>
where R: BufferedReader<Cookie> + 'a,

Reads from the given buffered reader.
source§

fn from_reader<R: 'a + Read + Send + Sync>(reader: R) -> Result<Self>

Reads from the given reader.
source§

fn from_bytes<D: AsRef<[u8]> + ?Sized + Send + Sync>( data: &'a D ) -> Result<Self>

Reads from the given slice. Read more
source§

fn from_file<P: AsRef<Path>>(path: P) -> Result<T>

Reads from the given file. Read more
source§

impl PartialEq for CompressedData

source§

fn eq(&self, other: &CompressedData) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Deref for CompressedData

§

type Target = Container

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Eq for CompressedData

source§

impl StructuralPartialEq for CompressedData

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> DynClone for T
where T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

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> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

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

§

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.