func()

in wrappers.go [168:187]


func (w *ioWrapper) Read(out []byte) (n int, err error) {
	mt, data, err := w.ReadMessage()
	if mt != websocket.BinaryMessage {
		switch err {
		case nil:
			data, err = w.decoder.Bytes(data)
		case io.EOF:
			return 0, io.EOF
		}
	}
	if err != nil {
		return 0, err
	}

	w.mu.Lock()
	w.messageType = mt
	w.mu.Unlock()

	return copy(out, data), nil
}