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

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

The size of a packet.

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)

Packet size is fully 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.

Methods

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 Serialize for BodyLength[src]

fn serialize<W: Write>(&self, o: &mut W) -> 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 SerializeInto for BodyLength[src]

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

Serializes the packet to a vector.

impl Copy for BodyLength[src]

impl PartialEq<BodyLength> for BodyLength[src]

impl Clone for BodyLength[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for BodyLength[src]

Auto Trait Implementations

impl Send for BodyLength

impl Sync for BodyLength

Blanket Implementations

impl<T> From for T[src]

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

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

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.