code: func (b *Buffer) ReadByte() (c byte, err error) {
  	if b.off >= len(b.buf) {
  		// Buffer is empty, reset to recover space.
  		b.Truncate(0)
  		return 0, io.EOF
  	}
  	c = b.buf[b.off]
  	b.off++
  	return c, nil
  }
docs: // ReadByte reads and returns the next byte from the buffer.
  // If no byte is available, it returns error io.EOF.