func parseBinaryString(ann []Symbol, lengthByte byte, r io.Reader) (Value, error) {
	if lengthByte == 0 {
		return String{annotations: ann, text: []byte{}}, nil
	}

	numBytes, errLength := determineLength16(lengthByte, r)
	if errLength != nil {
		return nil, errors.WithMessage(errLength, "unable to parse length of string")
	}

	buf := make([]byte, numBytes)
	if n, err := r.Read(buf); err != nil || n != int(numBytes) {
		return nil, errors.Errorf("unable to read string - read %d bytes of %d with err: %v", n, numBytes, err)
	}

	return String{annotations: ann, text: buf}, nil
}
// parseBinaryString reads the UTF-8 encoded string.
parseBinaryString reads the UTF-8 encoded string.
// parseBinaryString reads the UTF - 8 encoded string .
func parseBinaryString(ann []Symbol, lengthByte byte, r io.Reader) (Value, error) {
	if lengthByte == 0 {
		return String{annotations: ann, text: []byte{}}, nil
	}
	numBytes, errLength := determineLength16(lengthByte, r)
	if errLength != nil {
		return nil, errors.WithMessage(errLength, "unable to parse length of string")
	}
	buf := make([]byte, numBytes)
	if n, err := r.Read(buf); err != nil || n != int(numBytes) {
		return nil, errors.Errorf("unable to read string - read %d bytes of %d with err: %v", n, numBytes, err)
	}
	return String{annotations: ann, text: buf}, nil
}
func parseBinaryString ( ann [ ] Symbol , lengthByte byte , r io . Reader ) ( Value , error ) { if lengthByte == 0 { return String { annotations : ann , text : [ ] byte { } } , nil } numBytes , errLength := determineLength16 ( lengthByte , r ) if errLength != nil { return nil , errors . WithMessage ( errLength , " " ) } buf := make ( [ ] byte , numBytes ) if n , err := r . Read ( buf ) ; err != nil || n != int ( numBytes ) { return nil , errors . Errorf ( " " , n , numBytes , err ) } return String { annotations : ann , text : buf } , nil }
parseBinaryString reads the UTF-8 encoded string.
parseBinaryString reads the UTF - 8 encoded string .