Struct saito_rust::peer::OutboundPeer[][src]

pub struct OutboundPeer {
    pub write_sink: SplitSink<WebSocketStream<MaybeTlsStream<TcpStream>>, Message>,
}
Expand description

An outbound Peer. This holds a Stream(Sender/Sink) for a peer which we have connected to via /wsopen. TODO: Unify InboundPeer and OutboundPeer into a single trait and perhaps integrate it into SaitoPeer. This has proven to be a very difficult task because of ownership loops that make it very tricky to interact with a peer by reading messages from a socket which is inside the peer. This is why we have a separate structure to hold the sockets vs the rest of the peer data. It may be easy to at least unify Inbound and Outbound into a single Trait though and merge InboundPeersDB and OutboundPeersDB

Fields

write_sink: SplitSink<WebSocketStream<MaybeTlsStream<TcpStream>>, Message>

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

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

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Performs the conversion.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

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

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