// readHeader reads a header from the input.
//
// This function will attempt to read a header line from the input. If the
// line read is empty, this function returns (nil, nil). Otherwise it will
// attempt to read an unsigned integer and then a description. Both must be
// present for the method to succeed. If a header is parsed, this method will
// return it without setting the state to reflect that.
readHeader reads a header from the input.

This function will attempt to read a header line from the input. If the
line read is empty, this function returns (nil, nil). Otherwise it will
attempt to read an unsigned integer and then a description. Both must be
present for the method to succeed. If a header is parsed, this method will
return it without setting the state to reflect that.
// readHeader reads a header from the input . // // This function will attempt to read a header line from the input . If the // line read is empty this function returns ( nil nil ) . Otherwise it will // attempt to read an unsigned integer and then a description . Both must be // present for the method to succeed . If a header is parsed this method will // return it without setting the state to reflect that .
func (r *MessageReader) readHeader() (*Message, error) {
	line, err := r.reader.ReadString('\n')
	if err != nil {
		return nil, err
	}
	return ParseHeader(line)
}
func ( r * MessageReader ) readHeader ( ) ( * Message , error ) { line , err := r . reader . ReadString ( '\n' ) if err != nil { return nil , err } return ParseHeader ( line ) }
readHeader reads a header from the input.
readHeader reads a header from the input .