[][src]Enum sequoia_openpgp::packet::header::BodyLength

pub enum BodyLength {
    Full(u32),
    Partial(u32),
    Indeterminate,
}

A packet's size.

A packet's size can be expressed in three different ways. Either the size of the packet is fully known (Full), the packet is chunked using OpenPGP's partial body encoding (Partial), or the packet extends to the end of the file (Indeterminate). See Section 4.2 of RFC 4880 for more details.

Variants

Full(u32)

The packet's size is known.

Partial(u32)

The parameter is the number of bytes in the current chunk.

This type is only used with new format packets.

Indeterminate

The packet extends until an EOF is encountered.

This type is only used with old format packets.

Implementations

impl BodyLength[src]

pub fn serialize_old<W: Write>(&self, o: &mut W) -> Result<()>[src]

Emits the length encoded for use with old-style CTBs.

Note: the CTB itself is not emitted.

Errors

Returns Error::InvalidArgument if invoked on BodyLength::Partial. If you want to serialize a new-style length, use serialize(..).

Trait Implementations

impl Clone for BodyLength[src]

impl Copy for BodyLength[src]

impl Debug for BodyLength[src]

impl Marshal for BodyLength[src]

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

Emits the length encoded for use with new-style CTBs.

Note: the CTB itself is not emitted.

Errors

Returns Error::InvalidArgument if invoked on BodyLength::Indeterminate. If you want to serialize an old-style length, use serialize_old(..).

impl MarshalInto for BodyLength[src]

impl PartialEq<BodyLength> for BodyLength[src]

impl StructuralPartialEq for BodyLength[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> Same<T> for T

type Output = T

Should always be Self

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.