MCPcopy
hub / github.com/nats-io/nats.go / wsGet

Function wsGet

ws.go:406–421  ·  view source on GitHub ↗
(r io.Reader, buf []byte, pos, needed int)

Source from the content-addressed store, hash-verified

404}
405
406func wsGet(r io.Reader, buf []byte, pos, needed int) ([]byte, int, error) {
407 avail := len(buf) - pos
408 if avail >= needed {
409 return buf[pos : pos+needed], pos + needed, nil
410 }
411 b := make([]byte, needed)
412 start := copy(b, buf[pos:])
413 for start != needed {
414 n, err := r.Read(b[start:cap(b)])
415 start += n
416 if err != nil {
417 return b, start, err
418 }
419 }
420 return b, pos + avail, nil
421}
422
423func (r *websocketReader) handleControlFrame(frameType wsOpCode, buf []byte, pos, rem int) (int, error) {
424 var payload []byte

Callers 2

ReadMethod · 0.85
handleControlFrameMethod · 0.85

Calls 1

ReadMethod · 0.45

Tested by

no test coverage detected