Encoding

Trait Encoding 

Source
pub trait Encoding {
    // Required methods
    fn extend_ssh_string(&mut self, s: &[u8]);
    fn extend_ssh_string_blank(&mut self, s: usize) -> &mut [u8] ;
    fn extend_ssh_mpint(&mut self, s: &[u8]);
    fn extend_list<A: Bytes, I: Iterator<Item = A>>(&mut self, list: I);
    fn write_empty_list(&mut self);
}
Expand description

Encode in the SSH format.

Required Methods§

Source

fn extend_ssh_string(&mut self, s: &[u8])

Push an SSH-encoded string to self.

Source

fn extend_ssh_string_blank(&mut self, s: usize) -> &mut [u8]

Push an SSH-encoded blank string of length s to self.

Source

fn extend_ssh_mpint(&mut self, s: &[u8])

Push an SSH-encoded multiple-precision integer.

Source

fn extend_list<A: Bytes, I: Iterator<Item = A>>(&mut self, list: I)

Push an SSH-encoded list.

Source

fn write_empty_list(&mut self)

Push an SSH-encoded empty list.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Encoding for Vec<u8>

Source§

fn extend_ssh_string(&mut self, s: &[u8])

Source§

fn extend_ssh_string_blank(&mut self, len: usize) -> &mut [u8]

Source§

fn extend_ssh_mpint(&mut self, s: &[u8])

Source§

fn extend_list<A: Bytes, I: Iterator<Item = A>>(&mut self, list: I)

Source§

fn write_empty_list(&mut self)

Source§

impl Encoding for CryptoVec

Source§

fn extend_ssh_string(&mut self, s: &[u8])

Source§

fn extend_ssh_string_blank(&mut self, len: usize) -> &mut [u8]

Source§

fn extend_ssh_mpint(&mut self, s: &[u8])

Source§

fn extend_list<A: Bytes, I: Iterator<Item = A>>(&mut self, list: I)

Source§

fn write_empty_list(&mut self)

Implementors§