Struct pgp::line_writer::LineWriter

source ·
pub struct LineWriter<'a, W, N>where
    W: Write,
    N: Unsigned + ArrayLength<u8> + Add<U2>,
    Sum<N, U2>: ArrayLength<u8>,{ /* private fields */ }
Expand description

A Write implementation that splits any written bytes into the given length lines.

Panics

Calling write() after finish() is invalid and will panic.

Implementations§

source§

impl<'a, W, N> LineWriter<'a, W, N>where W: 'a + Write, N: Unsigned + ArrayLength<u8> + Add<U2>, Sum<N, U2>: ArrayLength<u8>,

source

pub fn new(w: &'a mut W, line_break: LineBreak) -> Self

Creates a new encoder around an existing writer.

source

pub fn finish(&mut self) -> Result<()>

Write all remaining buffered data.

Once this succeeds, no further writes can be performed.

Errors

Assuming the wrapped writer obeys the Write contract, if this returns Err, no data was written, and finish() may be retried if appropriate for the type of error, etc.

Trait Implementations§

source§

impl<'a, W, N> Drop for LineWriter<'a, W, N>where W: 'a + Write, N: Unsigned + ArrayLength<u8> + Add<U2>, Sum<N, U2>: ArrayLength<u8>,

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl<'a, W, N> Write for LineWriter<'a, W, N>where W: 'a + Write, N: Unsigned + ArrayLength<u8> + Add<U2>, Sum<N, U2>: ArrayLength<u8>,

source§

fn flush(&mut self) -> Result<()>

Because this is usually treated as OK to call multiple times, it will not flush any incomplete chunks of input or write padding.

source§

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

Write a buffer into this writer, returning how many bytes were written. Read more
1.36.0 · source§

fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>

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

fn is_write_vectored(&self) -> bool

🔬This is a nightly-only experimental API. (can_vector)
Determines if this Writer has an efficient write_vectored implementation. Read more
1.0.0 · source§

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

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

fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>

🔬This is a nightly-only experimental API. (write_all_vectored)
Attempts to write multiple buffers into this writer. Read more
1.0.0 · source§

fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<(), Error>

Writes a formatted string into this writer, returning any error encountered. Read more
1.0.0 · source§

fn by_ref(&mut self) -> &mut Selfwhere Self: Sized,

Creates a “by reference” adapter for this instance of Write. Read more

Auto Trait Implementations§

§

impl<'a, W, N> RefUnwindSafe for LineWriter<'a, W, N>where W: RefUnwindSafe, <N as ArrayLength<u8>>::ArrayType: RefUnwindSafe, <<N as Add<UInt<UInt<UTerm, B1>, B0>>>::Output as ArrayLength<u8>>::ArrayType: RefUnwindSafe,

§

impl<'a, W, N> Send for LineWriter<'a, W, N>where W: Send,

§

impl<'a, W, N> Sync for LineWriter<'a, W, N>where W: Sync,

§

impl<'a, W, N> Unpin for LineWriter<'a, W, N>where <N as ArrayLength<u8>>::ArrayType: Unpin, <<N as Add<UInt<UInt<UTerm, B1>, B0>>>::Output as ArrayLength<u8>>::ArrayType: Unpin,

§

impl<'a, W, N> !UnwindSafe for LineWriter<'a, W, N>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · 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<T> for T

§

type Output = T

Should always be Self
source§

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

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<W> WriteBytesExt for Wwhere W: Write + ?Sized,

source§

fn write_u8(&mut self, n: u8) -> Result<(), Error>

Writes an unsigned 8 bit integer to the underlying writer. Read more
source§

fn write_i8(&mut self, n: i8) -> Result<(), Error>

Writes a signed 8 bit integer to the underlying writer. Read more
source§

fn write_u16<T>(&mut self, n: u16) -> Result<(), Error>where T: ByteOrder,

Writes an unsigned 16 bit integer to the underlying writer. Read more
source§

fn write_i16<T>(&mut self, n: i16) -> Result<(), Error>where T: ByteOrder,

Writes a signed 16 bit integer to the underlying writer. Read more
source§

fn write_u24<T>(&mut self, n: u32) -> Result<(), Error>where T: ByteOrder,

Writes an unsigned 24 bit integer to the underlying writer. Read more
source§

fn write_i24<T>(&mut self, n: i32) -> Result<(), Error>where T: ByteOrder,

Writes a signed 24 bit integer to the underlying writer. Read more
source§

fn write_u32<T>(&mut self, n: u32) -> Result<(), Error>where T: ByteOrder,

Writes an unsigned 32 bit integer to the underlying writer. Read more
source§

fn write_i32<T>(&mut self, n: i32) -> Result<(), Error>where T: ByteOrder,

Writes a signed 32 bit integer to the underlying writer. Read more
source§

fn write_u48<T>(&mut self, n: u64) -> Result<(), Error>where T: ByteOrder,

Writes an unsigned 48 bit integer to the underlying writer. Read more
source§

fn write_i48<T>(&mut self, n: i64) -> Result<(), Error>where T: ByteOrder,

Writes a signed 48 bit integer to the underlying writer. Read more
source§

fn write_u64<T>(&mut self, n: u64) -> Result<(), Error>where T: ByteOrder,

Writes an unsigned 64 bit integer to the underlying writer. Read more
source§

fn write_i64<T>(&mut self, n: i64) -> Result<(), Error>where T: ByteOrder,

Writes a signed 64 bit integer to the underlying writer. Read more
source§

fn write_u128<T>(&mut self, n: u128) -> Result<(), Error>where T: ByteOrder,

Writes an unsigned 128 bit integer to the underlying writer.
source§

fn write_i128<T>(&mut self, n: i128) -> Result<(), Error>where T: ByteOrder,

Writes a signed 128 bit integer to the underlying writer.
source§

fn write_uint<T>(&mut self, n: u64, nbytes: usize) -> Result<(), Error>where T: ByteOrder,

Writes an unsigned n-bytes integer to the underlying writer. Read more
source§

fn write_int<T>(&mut self, n: i64, nbytes: usize) -> Result<(), Error>where T: ByteOrder,

Writes a signed n-bytes integer to the underlying writer. Read more
source§

fn write_uint128<T>(&mut self, n: u128, nbytes: usize) -> Result<(), Error>where T: ByteOrder,

Writes an unsigned n-bytes integer to the underlying writer. Read more
source§

fn write_int128<T>(&mut self, n: i128, nbytes: usize) -> Result<(), Error>where T: ByteOrder,

Writes a signed n-bytes integer to the underlying writer. Read more
source§

fn write_f32<T>(&mut self, n: f32) -> Result<(), Error>where T: ByteOrder,

Writes a IEEE754 single-precision (4 bytes) floating point number to the underlying writer. Read more
source§

fn write_f64<T>(&mut self, n: f64) -> Result<(), Error>where T: ByteOrder,

Writes a IEEE754 double-precision (8 bytes) floating point number to the underlying writer. Read more
§

impl<W> Writer for Wwhere W: Write,

§

fn write(&mut self, slice: &[u8]) -> Result<(), Error>

Write the given DER-encoded bytes as output.
§

fn write_byte(&mut self, byte: u8) -> Result<(), Error>

Write a single byte.