9fans.net/go@v0.0.5/draw/snarf.go (about)

     1  package draw
     2  
     3  // ReadSnarf reads the snarf buffer into buf, returning the number of bytes read,
     4  // the total size of the snarf buffer (useful if buf is too short), and any
     5  // error. No error is returned if there is no problem except for buf being too
     6  // short.
     7  func (d *Display) ReadSnarf(buf []byte) (int, int, error) {
     8  	d.mu.Lock()
     9  	defer d.mu.Unlock()
    10  	n, actual, err := d.conn.ReadSnarf(buf)
    11  	if err != nil {
    12  		return 0, 0, err
    13  	}
    14  	return n, actual, nil
    15  }
    16  
    17  // WriteSnarf writes the data to the snarf buffer.
    18  func (d *Display) WriteSnarf(data []byte) error {
    19  	d.mu.Lock()
    20  	defer d.mu.Unlock()
    21  	err := d.conn.WriteSnarf(data)
    22  	if err != nil {
    23  		return err
    24  	}
    25  	return nil
    26  }