pub trait TransportV2Ext {
    // Required method
    fn invoke<'a>(
        &mut self,
        command: &str,
        capabilities: impl Iterator<Item = (&'a str, Option<impl AsRef<str>>)> + 'a,
        arguments: Option<impl Iterator<Item = BString>>,
        trace: bool
    ) -> Result<Box<dyn ExtendedBufRead<'_> + Unpin + '_>, Error>;
}
Available on crate feature blocking-client only.
Expand description

An extension trait to add more methods to everything implementing Transport.

Required Methods§

source

fn invoke<'a>( &mut self, command: &str, capabilities: impl Iterator<Item = (&'a str, Option<impl AsRef<str>>)> + 'a, arguments: Option<impl Iterator<Item = BString>>, trace: bool ) -> Result<Box<dyn ExtendedBufRead<'_> + Unpin + '_>, Error>

Invoke a protocol V2 style command with given capabilities and optional command specific arguments. The capabilities were communicated during the handshake. If trace is true, then all packetlines written and received will be traced using facilities provided by the gix_trace crate.

Note: panics if handshake wasn’t performed beforehand.

Object Safety§

This trait is not object safe.

Implementors§