MCPcopy
hub / github.com/gorilla/websocket / Write

Method Write

conn.go:657–682  ·  conn.go::messageWriter.Write
(p []byte)

Source from the content-addressed store, hash-verified

655}
656
657func (w *messageWriter) Write(p []byte) (int, error) {
658 if w.err != nil {
659 return 0, w.err
660 }
661
662 if len(p) > 2*len(w.c.writeBuf) && w.c.isServer {
663 // Don't buffer large messages.
664 err := w.flushFrame(false, p)
665 if err != nil {
666 return 0, err
667 }
668 return len(p), nil
669 }
670
671 nn := len(p)
672 for len(p) > 0 {
673 n, err := w.ncopy(len(p))
674 if err != nil {
675 return 0, err
676 }
677 copy(w.c.writeBuf[w.pos:], p[:n])
678 w.pos += n
679 p = p[n:]
680 }
681 return nn, nil
682}
683
684func (w *messageWriter) WriteString(p string) (int, error) {
685 if w.err != nil {

Callers 3

writeMethod · 0.45
WriteControlMethod · 0.45
WriteMessageMethod · 0.45

Calls 2

flushFrameMethod · 0.95
ncopyMethod · 0.95

Tested by

no test coverage detected