func parseBinaryBlob(blob []byte) (*Digest, error) {
	// Read a single item from the binary stream.  Timeout after
	// five seconds because it shouldn't take that long to parse
	// a blob that is already loaded into memory.
	ch := parseBinaryStream(bytes.NewReader(blob))
	select {
	case out := <-ch:
		return out.Digest, out.Error
	case <-time.After(5 * time.Second):
		return nil, errors.New("timed out waiting for parser to finish")
	}
}
// parseBinaryBlob decodes a single blob of bytes into a Digest.
parseBinaryBlob decodes a single blob of bytes into a Digest.
// parseBinaryBlob decodes a single blob of bytes into a Digest .
func parseBinaryBlob(blob []byte) (*Digest, error) {
	ch := parseBinaryStream(bytes.NewReader(blob))
	select {
	case out := <-ch:
		return out.Digest, out.Error
	case <-time.After(5 * time.Second):
		return nil, errors.New("timed out waiting for parser to finish")
	}
}
func parseBinaryBlob ( blob [ ] byte ) ( * Digest , error ) { ch := parseBinaryStream ( bytes . NewReader ( blob ) ) select { case out := <- ch : return out . Digest , out . Error case <- time . After ( 5 * time . Second ) : return nil , errors . New ( " " ) } }
parseBinaryBlob decodes a single blob of bytes into a Digest.
parseBinaryBlob decodes a single blob of bytes into a Digest .
// Read a single item from the binary stream.  Timeout after // five seconds because it shouldn't take that long to parse // a blob that is already loaded into memory.