Certificate-based QUIC v1 reliable streams with bounded pull consumption.
See docs/consumer-contract.md for ownership, generation handles, deadlines,
admission outcomes and limitations. ALPN is metadata; application protocols
are provided by consumers.
Summary
Types
Functions
@spec accept(pid(), non_neg_integer() | operation_options()) :: {:ok, Quic.Runtime.ConnectionHandle.t()} | failure()
@spec capabilities() :: %{
datagram: true,
delivery: :pull,
http3: false,
io: [:external | :standalone, ...],
max_write_bytes: 16384,
resumption: false,
streams: [:bidi | :uni, ...],
version: 1
}
@spec client(keyword()) :: GenServer.on_start()
@spec close( Quic.Runtime.ConnectionHandle.t(), non_neg_integer(), binary(), operation_options() ) :: :ok | failure()
@spec connect(pid(), {:inet.ip_address(), :inet.port_number()}, operation_options()) :: {:ok, Quic.Runtime.ConnectionHandle.t()} | failure()
@spec events(Quic.Runtime.ConnectionHandle.t(), pos_integer(), operation_options()) :: {:ok, list()} | failure()
@spec listen(keyword()) :: GenServer.on_start()
@spec local(pid()) :: {:inet.ip_address(), :inet.port_number()} | {:error, term()}
@spec open_stream( Quic.Runtime.ConnectionHandle.t(), :bidi | :uni, operation_options() ) :: {:ok, Quic.Runtime.StreamHandle.t()} | failure()
@spec read(Quic.Runtime.StreamHandle.t(), pos_integer(), operation_options()) :: {:ok, list()} | failure()
@spec read_datagrams( Quic.Runtime.ConnectionHandle.t(), pos_integer(), operation_options() ) :: {:ok, [binary()]} | failure()
@spec ready(Quic.Runtime.ConnectionHandle.t()) :: :ready | :pending | failure()
@spec reset_stream( Quic.Runtime.StreamHandle.t(), non_neg_integer(), operation_options() ) :: {:ok, reference()} | failure()
@spec send_datagram(Quic.Runtime.ConnectionHandle.t(), binary(), operation_options()) :: {:ok, reference()} | failure()
@spec send_stream( Quic.Runtime.StreamHandle.t(), binary(), boolean(), operation_options() ) :: {:ok, reference()} | failure()
@spec stop_stream( Quic.Runtime.StreamHandle.t(), non_neg_integer(), operation_options() ) :: {:ok, reference()} | failure()