[][src]Struct sequoia_openpgp::fmt::hex::Dumper

pub struct Dumper<W: Write> { /* fields omitted */ }

Writes annotated hex dumps, like hd(1).

Example

 use sequoia_openpgp::fmt::hex;

let mut dumper = hex::Dumper::new(Vec::new(), "");
dumper.write(&[0x89, 0x01, 0x33], "frame").unwrap();
dumper.write(&[0x04], "version").unwrap();
dumper.write(&[0x00], "type").unwrap();

let buf = dumper.into_inner();
assert_eq!(
    ::std::str::from_utf8(&buf[..]).unwrap(),
    "00000000  89 01 33                                           frame\n\
     00000003           04                                        version\n\
     00000004              00                                     type\n\
     ");

Methods

impl<W: Write> Dumper<W>[src]

pub fn new<I: AsRef<str>>(inner: W, indent: I) -> Self[src]

Creates a new dumper.

The dump is written to inner. Every line is indented with indent.

pub fn into_inner(self) -> W[src]

Returns the inner writer.

pub fn write<B, M>(&mut self, buf: B, msg: M) -> Result<()> where
    B: AsRef<[u8]>,
    M: AsRef<str>, 
[src]

Writes a chunk of data.

The msg is printed at the end of the first line.

pub fn write_labeled<B, L>(&mut self, buf: B, labeler: L) -> Result<()> where
    B: AsRef<[u8]>,
    L: FnMut(usize, &[u8]) -> Option<String>, 
[src]

Writes a chunk of data.

For each line, the given function is called to compute a label that printed at the end of the first line. The functions first argument is the offset in the current line (0..16), the second the slice of the displayed data.

Auto Trait Implementations

impl<W> Send for Dumper<W> where
    W: Send

impl<W> Sync for Dumper<W> where
    W: Sync

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