MCPcopy Create free account
hub / github.com/araddon/qlbridge / Unmarshal

Method Unmarshal

rel/sql.pb.go:1757–1906  ·  view source on GitHub ↗
(data []byte)

Source from the content-addressed store, hash-verified

1755 return sovSql(uint64((x << 1) ^ uint64((int64(x) >> 63))))
1756}
1757func (m *SqlStatementPb) Unmarshal(data []byte) error {
1758 l := len(data)
1759 iNdEx := 0
1760 for iNdEx < l {
1761 preIndex := iNdEx
1762 var wire uint64
1763 for shift := uint(0); ; shift += 7 {
1764 if shift >= 64 {
1765 return ErrIntOverflowSql
1766 }
1767 if iNdEx >= l {
1768 return io.ErrUnexpectedEOF
1769 }
1770 b := data[iNdEx]
1771 iNdEx++
1772 wire |= (uint64(b) & 0x7F) << shift
1773 if b < 0x80 {
1774 break
1775 }
1776 }
1777 fieldNum := int32(wire >> 3)
1778 wireType := int(wire & 0x7)
1779 if wireType == 4 {
1780 return fmt.Errorf("proto: SqlStatementPb: wiretype end group for non-group")
1781 }
1782 if fieldNum <= 0 {
1783 return fmt.Errorf("proto: SqlStatementPb: illegal tag %d (wire type %d)", fieldNum, wire)
1784 }
1785 switch fieldNum {
1786 case 1:
1787 if wireType != 2 {
1788 return fmt.Errorf("proto: wrong wireType = %d for field Select", wireType)
1789 }
1790 var msglen int
1791 for shift := uint(0); ; shift += 7 {
1792 if shift >= 64 {
1793 return ErrIntOverflowSql
1794 }
1795 if iNdEx >= l {
1796 return io.ErrUnexpectedEOF
1797 }
1798 b := data[iNdEx]
1799 iNdEx++
1800 msglen |= (int(b) & 0x7F) << shift
1801 if b < 0x80 {
1802 break
1803 }
1804 }
1805 if msglen < 0 {
1806 return ErrInvalidLengthSql
1807 }
1808 postIndex := iNdEx + msglen
1809 if postIndex > l {
1810 return io.ErrUnexpectedEOF
1811 }
1812 if m.Select == nil {
1813 m.Select = &SqlSelectPb{}
1814 }

Callers

nothing calls this directly

Calls 3

skipSqlFunction · 0.85
ErrorfMethod · 0.80
UnmarshalMethod · 0.45

Tested by

no test coverage detected