Logo FsShelter

PeerTransport Type

Effectful transport surface. One instance per process.

Instance members

Instance member Description

this.Broadcast

Full Usage: this.Broadcast

Parameters:
Modifiers: abstract

Broadcast to a set of endpoints.

arg0 : PeerEndpoint seq
arg1 : WireEnvelope

this.Send

Full Usage: this.Send

Parameters:
Modifiers: abstract

Fire-and-forget. Queues onto that peer's bounded sender buffer. Never blocks on TCP. Drops oldest if the sender queue is full (control plane is idempotent — gossip will re-converge).

arg0 : PeerEndpoint
arg1 : WireEnvelope

this.Start

Full Usage: this.Start

Returns: Result<unit, TransportError>
Modifiers: abstract

Bind the listener and kick off receive coordination. Per-peer sender runtimes connect lazily. Fails fast only on bind errors; per-peer connect errors surface via `InboundEvent.PeerDropped`.

Returns: Result<unit, TransportError>

this.Stop

Full Usage: this.Stop

Modifiers: abstract

Cleanly stop listener + all per-peer sender runtimes.

this.Subscribe

Full Usage: this.Subscribe

Parameters:
Returns: unit -> unit
Modifiers: abstract

Subscribe to inbound frames and connection events. Returns an unsubscribe thunk. Multiple subscribers allowed.

arg0 : InboundEvent -> unit
Returns: unit -> unit

Type something to start searching.