MCPcopy
hub / github.com/grafana/tempo / Unmarshal

Method Unmarshal

pkg/tempopb/tempo.pb.go:7578–7646  ·  view source on GitHub ↗
(dAtA []byte)

Source from the content-addressed store, hash-verified

7576 return nil
7577}
7578func (m *TraceByIDMetrics) Unmarshal(dAtA []byte) error {
7579 l := len(dAtA)
7580 iNdEx := 0
7581 for iNdEx < l {
7582 preIndex := iNdEx
7583 var wire uint64
7584 for shift := uint(0); ; shift += 7 {
7585 if shift >= 64 {
7586 return ErrIntOverflowTempo
7587 }
7588 if iNdEx >= l {
7589 return io.ErrUnexpectedEOF
7590 }
7591 b := dAtA[iNdEx]
7592 iNdEx++
7593 wire |= uint64(b&0x7F) << shift
7594 if b < 0x80 {
7595 break
7596 }
7597 }
7598 fieldNum := int32(wire >> 3)
7599 wireType := int(wire & 0x7)
7600 if wireType == 4 {
7601 return fmt.Errorf("proto: TraceByIDMetrics: wiretype end group for non-group")
7602 }
7603 if fieldNum <= 0 {
7604 return fmt.Errorf("proto: TraceByIDMetrics: illegal tag %d (wire type %d)", fieldNum, wire)
7605 }
7606 switch fieldNum {
7607 case 1:
7608 if wireType != 0 {
7609 return fmt.Errorf("proto: wrong wireType = %d for field InspectedBytes", wireType)
7610 }
7611 m.InspectedBytes = 0
7612 for shift := uint(0); ; shift += 7 {
7613 if shift >= 64 {
7614 return ErrIntOverflowTempo
7615 }
7616 if iNdEx >= l {
7617 return io.ErrUnexpectedEOF
7618 }
7619 b := dAtA[iNdEx]
7620 iNdEx++
7621 m.InspectedBytes |= uint64(b&0x7F) << shift
7622 if b < 0x80 {
7623 break
7624 }
7625 }
7626 default:
7627 iNdEx = preIndex
7628 skippy, err := skipTempo(dAtA[iNdEx:])
7629 if err != nil {
7630 return err
7631 }
7632 if (skippy < 0) || (iNdEx+skippy) < 0 {
7633 return ErrInvalidLengthTempo
7634 }
7635 if (iNdEx + skippy) > l {

Callers 1

XXX_UnmarshalMethod · 0.95

Calls 1

skipTempoFunction · 0.85

Tested by

no test coverage detected