Transport

Struct Transport 

Source
pub struct Transport { /* private fields */ }
Expand description

The transport defines how data is sent and received from the client.

The langauge server protocol commonly uses stdio and ipc, but tcp and custom transports are also supported. All errors that occur during sending and receiving will cause the Server::serve method to immediately return with an error variant.

Implementations§

Source§

impl Transport

Source

pub fn custom( input: impl BufRead + 'static, output: impl Write + 'static, ) -> Transport

Creates a new transport from the given input and output streams. This transport will not support polling and therefore will not be able to support request cancellation.

§Arguments
  • input - The input stream to read from.
Source

pub fn tcp<T: ToSocketAddrs>(addr: T) -> Result<Transport, Error>

Opens a tcp connection to the given address and returns a transport.

§Argument
  • addr - The address to connect to.
Source

pub fn stdio() -> Transport

Locks the standard input and output streams and returns a transport.

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

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

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.