| 1221 | return sovNode(uint64((x << 1) ^ uint64((int64(x) >> 63)))) |
| 1222 | } |
| 1223 | func (m *ExprPb) Unmarshal(data []byte) error { |
| 1224 | l := len(data) |
| 1225 | iNdEx := 0 |
| 1226 | for iNdEx < l { |
| 1227 | preIndex := iNdEx |
| 1228 | var wire uint64 |
| 1229 | for shift := uint(0); ; shift += 7 { |
| 1230 | if shift >= 64 { |
| 1231 | return ErrIntOverflowNode |
| 1232 | } |
| 1233 | if iNdEx >= l { |
| 1234 | return io.ErrUnexpectedEOF |
| 1235 | } |
| 1236 | b := data[iNdEx] |
| 1237 | iNdEx++ |
| 1238 | wire |= (uint64(b) & 0x7F) << shift |
| 1239 | if b < 0x80 { |
| 1240 | break |
| 1241 | } |
| 1242 | } |
| 1243 | fieldNum := int32(wire >> 3) |
| 1244 | wireType := int(wire & 0x7) |
| 1245 | if wireType == 4 { |
| 1246 | return fmt.Errorf("proto: ExprPb: wiretype end group for non-group") |
| 1247 | } |
| 1248 | if fieldNum <= 0 { |
| 1249 | return fmt.Errorf("proto: ExprPb: illegal tag %d (wire type %d)", fieldNum, wire) |
| 1250 | } |
| 1251 | switch fieldNum { |
| 1252 | case 1: |
| 1253 | if wireType != 0 { |
| 1254 | return fmt.Errorf("proto: wrong wireType = %d for field Op", wireType) |
| 1255 | } |
| 1256 | var v int32 |
| 1257 | for shift := uint(0); ; shift += 7 { |
| 1258 | if shift >= 64 { |
| 1259 | return ErrIntOverflowNode |
| 1260 | } |
| 1261 | if iNdEx >= l { |
| 1262 | return io.ErrUnexpectedEOF |
| 1263 | } |
| 1264 | b := data[iNdEx] |
| 1265 | iNdEx++ |
| 1266 | v |= (int32(b) & 0x7F) << shift |
| 1267 | if b < 0x80 { |
| 1268 | break |
| 1269 | } |
| 1270 | } |
| 1271 | m.Op = &v |
| 1272 | case 2: |
| 1273 | if wireType != 2 { |
| 1274 | return fmt.Errorf("proto: wrong wireType = %d for field Args", wireType) |
| 1275 | } |
| 1276 | var msglen int |
| 1277 | for shift := uint(0); ; shift += 7 { |
| 1278 | if shift >= 64 { |
| 1279 | return ErrIntOverflowNode |
| 1280 | } |