code: func (d *Decoder) readUntil(sep byte) {
  	for {
  		b := d.readByte()
  		if b == sep {
  			return
  		}
  		d.buf.WriteByte(b)
  	}
  }
docs: // reads data writing it to 'd.buf' until 'sep' byte is encountered, 'sep' byte
  // is consumed, but not included into the 'd.buf'