Types
BufferStream = ref object of Connection readQueue*: AsyncQueue[seq[byte]] readBuf*: StreamSeq pushing*: bool reading*: bool pushedEof*: bool returnedEof*: bool
- Source Edit
Consts
BufferStreamTrackerName = "BufferStream"
- Source Edit
Procs
proc len(s: BufferStream): int {....raises: [], tags: [].}
- Source Edit
proc new(T: typedesc[BufferStream]; timeout: Duration = DefaultConnectionTimeout): T:type {. ...raises: [].}
- Source Edit
func shortLog(s: BufferStream): auto {....raises: [], tags: [].}
- Source Edit
Methods
method atEof(s: BufferStream): bool {....raises: [], tags: [].}
- Source Edit
method closeImpl(s: BufferStream): InternalRaisesFuture[void, void] {. stackTrace: false, ...raises: [], gcsafe, raises: [], raises: [], tags: [RootEffect].}
- Source Edit
method initStream(s: BufferStream) {....raises: [], tags: [TimeEffect, RootEffect].}
- Source Edit
method pushData(s: BufferStream; data: seq[byte]): InternalRaisesFuture[void, (CancelledError, LPStreamError)] {.base, stackTrace: false, ...raises: [], gcsafe, raises: [], raises: [], tags: [RootEffect].}
-
Write bytes to internal read buffer, use this to fill up the buffer with data.
pushTo will block if the queue is full, thus maintaining backpressure.
Source Edit method pushEof(s: BufferStream): InternalRaisesFuture[void, (CancelledError, LPStreamError)] {.base, stackTrace: false, ...raises: [], gcsafe, raises: [], raises: [], tags: [RootEffect].}
- Source Edit
method readOnce(s: BufferStream; pbytes: pointer; nbytes: int): InternalRaisesFuture[ int, (CancelledError, LPStreamError)] {.stackTrace: false, ...raises: [], gcsafe, raises: [], raises: [], tags: [RootEffect].}
- Source Edit
Templates
template formatItIMPL(it: BufferStream): auto
- Source Edit
Exports
-
DNS_OR_IP, shortLog, random, UDP_DNS, $, MaError, ephemeral, MaPatternOp, ==, WS_DNS, initVBuffer, <=, decode, MaxSizeError, filterIt, ECDHEScheme, shortLog, init, closed, [], shuffle, random, VBuffer, Secret, peekVarint, random, $, validate, init, bytes, maxInlineKeyLength, TranscoderDNS, QUIC, [], ephemeral, withValue, finish, WS_IP, public, MAKind, decode, write, write, init, valueOr, getRepeatedField, matchPartial, libp2p_pki_schemes, getBytes, WebSockets, init, readLp, HTTP, initVBuffer, atEof, LPStreamTrackerName, peekSeq, toOpt, fullAddrs, payloadType, LPStreamError, init, $, IP, protoAddress, QUIC_V1_IP, newRng, ==, withValue, checkValid, mac, getPublicKey, exceptionToAssert, len, CircuitRelay, extractPublicKey, mapAnd, new, maErr, hash, UDP_IP, new, newLPStreamEOFError, init, DNSADDR, mapOr, AddressMapper, key, write, PeerId, WSS, LPStream, QUIC_V1, TCP_IP, hash, init, closeImpl, readSeq, toBytes, TCP_DNS, shortLog, encode, capLen, protoName, ==, toRawBytes, MaPattern, init, WSS_DNS, match, writeLPVarint, CryptoResult, parseFullAddress, init, WebRTCDirect, MAProtocol, init, UDP, TranscoderOnion, StreamTracker, write, init, LPStreamResetError, writeArray, LPStreamIncompleteError, [], LPStreamEOFError, IP6, shortLog, initVBuffer, PKScheme, init, toString, payload, init, Connection, write, init, TCP, PrivateKey, getBytes, write, init, &=, PeerInfoError, newLPStreamClosedError, random, compilesOr, close, TranscoderIP4, init, toException, DNS, init, init, UTP, goffset, readVarint, getRawBytes, >, KeyPair, init, high, cmp, DefaultConnectionTimeout, formatItIMPL, formatItIMPL, formatItIMPL, Signature, exclIfIt, formatItIMPL, toBytes, DigestSheme, IPFS, readOnce, init, isEmpty, data, shortLog, hex, protocols, init, HTTPS, QUIC_DNS, len, LPError, TLS_WS, sign, encode, supported, update, MaResult, init, TimeoutHandler, toBytes, writeSeq, &, DNS6, IpTransportProtocol, IP4, TranscoderPort, safeConvert, getField, init, >=, init, payloadDomain, $, withValue, init, LPStreamLimitError, TranscoderOnion3, SignedPayload, init, toBytes, protoArgument, newLPStreamLimitError, write, keyOpenArray, QUIC_V1_DNS, match, parseFullAddress, $, isEmpty, writeLp, init, newLPStreamIncompleteError, newLPStreamResetError, initStream, contains, stretchKeys, getField, shortLog, DNS4, getWrapped, readArray, selectBest, write, P2PPattern, Envelope, hasPublicKey, toException, init, isEnough, Reliable, addrs, hex, closeImpl, getBytes, decode, WS, init, encode, init, readVarint, getField, match, <, iv, readLine, Eof, CryptoError, verify, append, DNSANY, WSS_IP, LPStreamConnDownError, peekArray, UNIX, PeerRecord, init, SupportedSchemes, getField, Unreliable, SupportedSchemesInt, random, checkFutures, macOpenArray, init, validate, $, protoCode, mapEq, Onion3, TcpOnion3, hash, concat, TranscoderP2P, PeerInfo, AddressInfo, ConnectionTrackerName, TranscoderIP6, init, write, EnvelopeError, encode, len, newLPStreamRemoteClosedError, TranscoderIP6Zone, MaPatResult, Direction, init, InvalidVarintError, shortLog, ==, init, write, getBytes, write, init, QUIC_IP, PublicKey, WebSockets_IP, writeLp, writePBVarint, readExactly, protoArgument, newLPStreamConnDownError, WebSockets_DNS, initStream, getField, MultiAddress, ivOpenArray, closeWithEOF, orError, getField, LPStreamRemoteClosedError, MaInvalidAddress, LPStreamClosedError, RsaDefaultKeySize, items, write, getOrder, TranscoderUnix, SignedPeerRecord, join, writeVarint