libp2p/muxers/yamux/yamux

    Dark Mode
Search:
Group by:
  Source   Edit

Types

Yamux = ref object of Muxer
  channels: Table[uint32, YamuxChannel]
  flushed: Table[uint32, int]
  currentId: uint32
  isClosed: bool
  maxChannCount: int
  windowSize: int
  maxSendQueueSize: int
  inTimeout: Duration
  outTimeout: Duration
  Source   Edit
YamuxChannel = ref object of Connection
  id: uint32
  recvWindow: int
  sendWindow: int
  maxRecvWindow: int
  maxSendQueueSize: int
  conn: Connection
  isSrc: bool
  opened: bool
  isSending: bool
  sendQueue: seq[ToSend]
  recvQueue: seq[byte]
  isReset: bool
  remoteReset: bool
  closedRemotely: Future[void].Raising([])
  closedLocally: bool
  receivedData: AsyncEvent
  returnedEof: bool
  Source   Edit
YamuxError = object of MuxerError
  Source   Edit

Consts

YamuxCodec = "/yamux/1.0.0"
  Source   Edit

Procs

proc new(T: type[Yamux]; conn: Connection; maxChannCount: int = MaxChannelCount;
         windowSize: int = YamuxDefaultWindowSize;
         maxSendQueueSize: int = MaxSendQueueSize;
         inTimeout: Duration = 5.minutes; outTimeout: Duration = 5.minutes): T:type {.
    ...raises: [].}
  Source   Edit
proc setMaxRecvWindow(channel: YamuxChannel; maxRecvWindow: int) {....raises: [],
    tags: [].}
  Source   Edit

Methods

method close(m: Yamux) {.async: (...raises: []), ...raises: [], tags: [].}
  Source   Edit
method closeImpl(channel: YamuxChannel) {.async: (...raises: []), ...raises: [],
    tags: [].}
  Source   Edit
method getStreams(m: Yamux): seq[Connection] {....raises: [], tags: [].}
  Source   Edit
method getWrapped(channel: YamuxChannel): Connection {....raises: [], tags: [].}
  Source   Edit
method newStream(m: Yamux; name: string = ""; lazy: bool = false): Future[
    Connection] {.async: (...raises: [CancelledError, LPStreamError, MuxerError]),
                  ...raises: [], tags: [RootEffect, TimeEffect].}
  Source   Edit
method readOnce(channel: YamuxChannel; pbytes: pointer; nbytes: int): Future[int] {.
    async: (...raises: [CancelledError, LPStreamError]), ...raises: [], tags: [].}
Read from a yamux channel   Source   Edit
method write(channel: YamuxChannel; msg: seq[byte]): Future[void] {.
    async: (...raises: [CancelledError, LPStreamError], raw: true), ...raises: [],
    tags: [RootEffect].}
Write to yamux channel   Source   Edit