magic_wormhole::transit

Struct TransitConnector

Source
pub struct TransitConnector { /* private fields */ }
👎Deprecated since 0.7.0: This will be a private type in the future. Open an issue if you require access to protocol intrinsics in the future
Expand description

A partially set up Transit connection.

For the transit handshake, each side generates a Hints with all the information to find the other. You need to exchange it (as in: send yours, receive theirs) with them. This is outside of the transit protocol, because we are protocol agnostic.

Implementations§

Source§

impl TransitConnector

Source

pub fn our_abilities(&self) -> &Abilities

The abilities that we’ve sent to the other side

Source

pub fn our_hints(&self) -> &Arc<Hints>

Send this one to the other side

Source

pub async fn connect( self, is_leader: bool, transit_key: Key<TransitKey>, their_abilities: Abilities, their_hints: Arc<Hints>, ) -> Result<(Transit, TransitInfo), TransitConnectError>

Forwards to either leader_connect or follower_connect.

It usually is better to call the respective functions directly by their name, as it makes them less easy to confuse (confusion may still happen though). Nevertheless, sometimes it is desirable to use the same code for both sides and only track the side with a boolean.

Source

pub async fn leader_connect( self, transit_key: Key<TransitKey>, their_abilities: Abilities, their_hints: Arc<Hints>, ) -> Result<(Transit, TransitInfo), TransitConnectError>

Connect to the other side, as sender.

Source

pub async fn follower_connect( self, transit_key: Key<TransitKey>, their_abilities: Abilities, their_hints: Arc<Hints>, ) -> Result<(Transit, TransitInfo), TransitConnectError>

Connect to the other side, as receiver

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> Same for T

Source§

type Output = T

Should always be Self
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.
Source§

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

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T