starpc 0.0.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/LICENSE +19 -0
  2. package/Makefile +140 -0
  3. package/README.md +128 -26
  4. package/dist/echo/echo.d.ts +59 -0
  5. package/dist/echo/echo.js +85 -0
  6. package/dist/srpc/broadcast-channel.d.ts +16 -0
  7. package/dist/srpc/broadcast-channel.js +60 -0
  8. package/dist/srpc/client-rpc.d.ts +31 -0
  9. package/dist/srpc/client-rpc.js +176 -0
  10. package/dist/srpc/client.d.ts +12 -0
  11. package/dist/srpc/client.js +129 -0
  12. package/dist/srpc/conn.d.ts +14 -0
  13. package/dist/srpc/conn.js +38 -0
  14. package/dist/srpc/index.d.ts +3 -0
  15. package/dist/srpc/index.js +2 -0
  16. package/dist/srpc/packet.d.ts +9 -0
  17. package/dist/srpc/packet.js +89 -0
  18. package/dist/srpc/rpcproto.d.ts +194 -0
  19. package/dist/srpc/rpcproto.js +322 -0
  20. package/dist/srpc/stream.d.ts +5 -0
  21. package/dist/srpc/stream.js +1 -0
  22. package/dist/srpc/ts-proto-rpc.d.ts +7 -0
  23. package/dist/srpc/ts-proto-rpc.js +1 -0
  24. package/dist/srpc/websocket.d.ts +7 -0
  25. package/dist/srpc/websocket.js +18 -0
  26. package/e2e/e2e.go +1 -0
  27. package/e2e/e2e_test.go +158 -0
  28. package/echo/echo.go +1 -0
  29. package/echo/echo.pb.go +165 -0
  30. package/echo/echo.proto +19 -0
  31. package/echo/echo.ts +191 -0
  32. package/echo/echo_srpc.pb.go +333 -0
  33. package/echo/echo_vtproto.pb.go +271 -0
  34. package/echo/server.go +73 -0
  35. package/go.mod +50 -0
  36. package/go.sum +210 -0
  37. package/integration/integration.bash +25 -0
  38. package/integration/integration.go +30 -0
  39. package/integration/integration.ts +54 -0
  40. package/integration/tsconfig.json +11 -0
  41. package/package.json +77 -9
  42. package/patches/@libp2p+mplex+1.2.1.patch +22 -0
  43. package/srpc/broadcast-channel.ts +72 -0
  44. package/srpc/client-rpc.go +163 -0
  45. package/srpc/client-rpc.ts +197 -0
  46. package/srpc/client.go +96 -0
  47. package/srpc/client.ts +182 -0
  48. package/srpc/conn.go +7 -0
  49. package/srpc/conn.ts +49 -0
  50. package/srpc/errors.go +20 -0
  51. package/srpc/handler.go +13 -0
  52. package/srpc/index.ts +3 -0
  53. package/srpc/message.go +7 -0
  54. package/srpc/mux.go +76 -0
  55. package/srpc/packet-rw.go +102 -0
  56. package/srpc/packet.go +71 -0
  57. package/srpc/packet.ts +105 -0
  58. package/srpc/rpc-stream.go +76 -0
  59. package/srpc/rpcproto.pb.go +455 -0
  60. package/srpc/rpcproto.proto +46 -0
  61. package/srpc/rpcproto.ts +467 -0
  62. package/srpc/rpcproto_vtproto.pb.go +1094 -0
  63. package/srpc/server-http.go +66 -0
  64. package/srpc/server-pipe.go +26 -0
  65. package/srpc/server-rpc.go +160 -0
  66. package/srpc/server.go +29 -0
  67. package/srpc/stream-pipe.go +86 -0
  68. package/srpc/stream.go +24 -0
  69. package/srpc/stream.ts +11 -0
  70. package/srpc/ts-proto-rpc.ts +29 -0
  71. package/srpc/websocket.go +68 -0
  72. package/srpc/websocket.ts +22 -0
  73. package/srpc/writer.go +9 -0
@@ -0,0 +1,1094 @@
1
+ // Code generated by protoc-gen-go-vtproto. DO NOT EDIT.
2
+ // protoc-gen-go-vtproto version: v0.3.1-0.20220531071333-dfd3d322ffb6
3
+ // source: github.com/aperturerobotics/starpc/srpc/rpcproto.proto
4
+
5
+ package srpc
6
+
7
+ import (
8
+ fmt "fmt"
9
+ io "io"
10
+ bits "math/bits"
11
+
12
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
13
+ )
14
+
15
+ const (
16
+ // Verify that this generated code is sufficiently up-to-date.
17
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
18
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
19
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
20
+ )
21
+
22
+ func (this *Packet) EqualVT(that *Packet) bool {
23
+ if this == nil {
24
+ return that == nil || that.String() == ""
25
+ } else if that == nil {
26
+ return this.String() == ""
27
+ }
28
+ if this.Body == nil && that.Body != nil {
29
+ return false
30
+ } else if this.Body != nil {
31
+ if that.Body == nil {
32
+ return false
33
+ }
34
+ if !this.GetCallStart().EqualVT(that.GetCallStart()) {
35
+ return false
36
+ }
37
+ if !this.GetCallStartResp().EqualVT(that.GetCallStartResp()) {
38
+ return false
39
+ }
40
+ if !this.GetCallData().EqualVT(that.GetCallData()) {
41
+ return false
42
+ }
43
+ }
44
+ return string(this.unknownFields) == string(that.unknownFields)
45
+ }
46
+
47
+ func (this *CallStart) EqualVT(that *CallStart) bool {
48
+ if this == nil {
49
+ return that == nil || that.String() == ""
50
+ } else if that == nil {
51
+ return this.String() == ""
52
+ }
53
+ if this.RpcService != that.RpcService {
54
+ return false
55
+ }
56
+ if this.RpcMethod != that.RpcMethod {
57
+ return false
58
+ }
59
+ if string(this.Data) != string(that.Data) {
60
+ return false
61
+ }
62
+ return string(this.unknownFields) == string(that.unknownFields)
63
+ }
64
+
65
+ func (this *CallStartResp) EqualVT(that *CallStartResp) bool {
66
+ if this == nil {
67
+ return that == nil || that.String() == ""
68
+ } else if that == nil {
69
+ return this.String() == ""
70
+ }
71
+ if this.Error != that.Error {
72
+ return false
73
+ }
74
+ return string(this.unknownFields) == string(that.unknownFields)
75
+ }
76
+
77
+ func (this *CallData) EqualVT(that *CallData) bool {
78
+ if this == nil {
79
+ return that == nil || that.String() == ""
80
+ } else if that == nil {
81
+ return this.String() == ""
82
+ }
83
+ if string(this.Data) != string(that.Data) {
84
+ return false
85
+ }
86
+ if this.Complete != that.Complete {
87
+ return false
88
+ }
89
+ if this.Error != that.Error {
90
+ return false
91
+ }
92
+ return string(this.unknownFields) == string(that.unknownFields)
93
+ }
94
+
95
+ func (m *Packet) MarshalVT() (dAtA []byte, err error) {
96
+ if m == nil {
97
+ return nil, nil
98
+ }
99
+ size := m.SizeVT()
100
+ dAtA = make([]byte, size)
101
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
102
+ if err != nil {
103
+ return nil, err
104
+ }
105
+ return dAtA[:n], nil
106
+ }
107
+
108
+ func (m *Packet) MarshalToVT(dAtA []byte) (int, error) {
109
+ size := m.SizeVT()
110
+ return m.MarshalToSizedBufferVT(dAtA[:size])
111
+ }
112
+
113
+ func (m *Packet) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
114
+ if m == nil {
115
+ return 0, nil
116
+ }
117
+ i := len(dAtA)
118
+ _ = i
119
+ var l int
120
+ _ = l
121
+ if m.unknownFields != nil {
122
+ i -= len(m.unknownFields)
123
+ copy(dAtA[i:], m.unknownFields)
124
+ }
125
+ if vtmsg, ok := m.Body.(interface {
126
+ MarshalToSizedBufferVT([]byte) (int, error)
127
+ }); ok {
128
+ size, err := vtmsg.MarshalToSizedBufferVT(dAtA[:i])
129
+ if err != nil {
130
+ return 0, err
131
+ }
132
+ i -= size
133
+ }
134
+ return len(dAtA) - i, nil
135
+ }
136
+
137
+ func (m *Packet_CallStart) MarshalToVT(dAtA []byte) (int, error) {
138
+ size := m.SizeVT()
139
+ return m.MarshalToSizedBufferVT(dAtA[:size])
140
+ }
141
+
142
+ func (m *Packet_CallStart) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
143
+ i := len(dAtA)
144
+ if m.CallStart != nil {
145
+ size, err := m.CallStart.MarshalToSizedBufferVT(dAtA[:i])
146
+ if err != nil {
147
+ return 0, err
148
+ }
149
+ i -= size
150
+ i = encodeVarint(dAtA, i, uint64(size))
151
+ i--
152
+ dAtA[i] = 0xa
153
+ }
154
+ return len(dAtA) - i, nil
155
+ }
156
+ func (m *Packet_CallStartResp) MarshalToVT(dAtA []byte) (int, error) {
157
+ size := m.SizeVT()
158
+ return m.MarshalToSizedBufferVT(dAtA[:size])
159
+ }
160
+
161
+ func (m *Packet_CallStartResp) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
162
+ i := len(dAtA)
163
+ if m.CallStartResp != nil {
164
+ size, err := m.CallStartResp.MarshalToSizedBufferVT(dAtA[:i])
165
+ if err != nil {
166
+ return 0, err
167
+ }
168
+ i -= size
169
+ i = encodeVarint(dAtA, i, uint64(size))
170
+ i--
171
+ dAtA[i] = 0x12
172
+ }
173
+ return len(dAtA) - i, nil
174
+ }
175
+ func (m *Packet_CallData) MarshalToVT(dAtA []byte) (int, error) {
176
+ size := m.SizeVT()
177
+ return m.MarshalToSizedBufferVT(dAtA[:size])
178
+ }
179
+
180
+ func (m *Packet_CallData) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
181
+ i := len(dAtA)
182
+ if m.CallData != nil {
183
+ size, err := m.CallData.MarshalToSizedBufferVT(dAtA[:i])
184
+ if err != nil {
185
+ return 0, err
186
+ }
187
+ i -= size
188
+ i = encodeVarint(dAtA, i, uint64(size))
189
+ i--
190
+ dAtA[i] = 0x1a
191
+ }
192
+ return len(dAtA) - i, nil
193
+ }
194
+ func (m *CallStart) MarshalVT() (dAtA []byte, err error) {
195
+ if m == nil {
196
+ return nil, nil
197
+ }
198
+ size := m.SizeVT()
199
+ dAtA = make([]byte, size)
200
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
201
+ if err != nil {
202
+ return nil, err
203
+ }
204
+ return dAtA[:n], nil
205
+ }
206
+
207
+ func (m *CallStart) MarshalToVT(dAtA []byte) (int, error) {
208
+ size := m.SizeVT()
209
+ return m.MarshalToSizedBufferVT(dAtA[:size])
210
+ }
211
+
212
+ func (m *CallStart) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
213
+ if m == nil {
214
+ return 0, nil
215
+ }
216
+ i := len(dAtA)
217
+ _ = i
218
+ var l int
219
+ _ = l
220
+ if m.unknownFields != nil {
221
+ i -= len(m.unknownFields)
222
+ copy(dAtA[i:], m.unknownFields)
223
+ }
224
+ if len(m.Data) > 0 {
225
+ i -= len(m.Data)
226
+ copy(dAtA[i:], m.Data)
227
+ i = encodeVarint(dAtA, i, uint64(len(m.Data)))
228
+ i--
229
+ dAtA[i] = 0x1a
230
+ }
231
+ if len(m.RpcMethod) > 0 {
232
+ i -= len(m.RpcMethod)
233
+ copy(dAtA[i:], m.RpcMethod)
234
+ i = encodeVarint(dAtA, i, uint64(len(m.RpcMethod)))
235
+ i--
236
+ dAtA[i] = 0x12
237
+ }
238
+ if len(m.RpcService) > 0 {
239
+ i -= len(m.RpcService)
240
+ copy(dAtA[i:], m.RpcService)
241
+ i = encodeVarint(dAtA, i, uint64(len(m.RpcService)))
242
+ i--
243
+ dAtA[i] = 0xa
244
+ }
245
+ return len(dAtA) - i, nil
246
+ }
247
+
248
+ func (m *CallStartResp) MarshalVT() (dAtA []byte, err error) {
249
+ if m == nil {
250
+ return nil, nil
251
+ }
252
+ size := m.SizeVT()
253
+ dAtA = make([]byte, size)
254
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
255
+ if err != nil {
256
+ return nil, err
257
+ }
258
+ return dAtA[:n], nil
259
+ }
260
+
261
+ func (m *CallStartResp) MarshalToVT(dAtA []byte) (int, error) {
262
+ size := m.SizeVT()
263
+ return m.MarshalToSizedBufferVT(dAtA[:size])
264
+ }
265
+
266
+ func (m *CallStartResp) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
267
+ if m == nil {
268
+ return 0, nil
269
+ }
270
+ i := len(dAtA)
271
+ _ = i
272
+ var l int
273
+ _ = l
274
+ if m.unknownFields != nil {
275
+ i -= len(m.unknownFields)
276
+ copy(dAtA[i:], m.unknownFields)
277
+ }
278
+ if len(m.Error) > 0 {
279
+ i -= len(m.Error)
280
+ copy(dAtA[i:], m.Error)
281
+ i = encodeVarint(dAtA, i, uint64(len(m.Error)))
282
+ i--
283
+ dAtA[i] = 0xa
284
+ }
285
+ return len(dAtA) - i, nil
286
+ }
287
+
288
+ func (m *CallData) MarshalVT() (dAtA []byte, err error) {
289
+ if m == nil {
290
+ return nil, nil
291
+ }
292
+ size := m.SizeVT()
293
+ dAtA = make([]byte, size)
294
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
295
+ if err != nil {
296
+ return nil, err
297
+ }
298
+ return dAtA[:n], nil
299
+ }
300
+
301
+ func (m *CallData) MarshalToVT(dAtA []byte) (int, error) {
302
+ size := m.SizeVT()
303
+ return m.MarshalToSizedBufferVT(dAtA[:size])
304
+ }
305
+
306
+ func (m *CallData) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
307
+ if m == nil {
308
+ return 0, nil
309
+ }
310
+ i := len(dAtA)
311
+ _ = i
312
+ var l int
313
+ _ = l
314
+ if m.unknownFields != nil {
315
+ i -= len(m.unknownFields)
316
+ copy(dAtA[i:], m.unknownFields)
317
+ }
318
+ if len(m.Error) > 0 {
319
+ i -= len(m.Error)
320
+ copy(dAtA[i:], m.Error)
321
+ i = encodeVarint(dAtA, i, uint64(len(m.Error)))
322
+ i--
323
+ dAtA[i] = 0x1a
324
+ }
325
+ if m.Complete {
326
+ i--
327
+ if m.Complete {
328
+ dAtA[i] = 1
329
+ } else {
330
+ dAtA[i] = 0
331
+ }
332
+ i--
333
+ dAtA[i] = 0x10
334
+ }
335
+ if len(m.Data) > 0 {
336
+ i -= len(m.Data)
337
+ copy(dAtA[i:], m.Data)
338
+ i = encodeVarint(dAtA, i, uint64(len(m.Data)))
339
+ i--
340
+ dAtA[i] = 0xa
341
+ }
342
+ return len(dAtA) - i, nil
343
+ }
344
+
345
+ func encodeVarint(dAtA []byte, offset int, v uint64) int {
346
+ offset -= sov(v)
347
+ base := offset
348
+ for v >= 1<<7 {
349
+ dAtA[offset] = uint8(v&0x7f | 0x80)
350
+ v >>= 7
351
+ offset++
352
+ }
353
+ dAtA[offset] = uint8(v)
354
+ return base
355
+ }
356
+ func (m *Packet) SizeVT() (n int) {
357
+ if m == nil {
358
+ return 0
359
+ }
360
+ var l int
361
+ _ = l
362
+ if vtmsg, ok := m.Body.(interface{ SizeVT() int }); ok {
363
+ n += vtmsg.SizeVT()
364
+ }
365
+ n += len(m.unknownFields)
366
+ return n
367
+ }
368
+
369
+ func (m *Packet_CallStart) SizeVT() (n int) {
370
+ if m == nil {
371
+ return 0
372
+ }
373
+ var l int
374
+ _ = l
375
+ if m.CallStart != nil {
376
+ l = m.CallStart.SizeVT()
377
+ n += 1 + l + sov(uint64(l))
378
+ }
379
+ return n
380
+ }
381
+ func (m *Packet_CallStartResp) SizeVT() (n int) {
382
+ if m == nil {
383
+ return 0
384
+ }
385
+ var l int
386
+ _ = l
387
+ if m.CallStartResp != nil {
388
+ l = m.CallStartResp.SizeVT()
389
+ n += 1 + l + sov(uint64(l))
390
+ }
391
+ return n
392
+ }
393
+ func (m *Packet_CallData) SizeVT() (n int) {
394
+ if m == nil {
395
+ return 0
396
+ }
397
+ var l int
398
+ _ = l
399
+ if m.CallData != nil {
400
+ l = m.CallData.SizeVT()
401
+ n += 1 + l + sov(uint64(l))
402
+ }
403
+ return n
404
+ }
405
+ func (m *CallStart) SizeVT() (n int) {
406
+ if m == nil {
407
+ return 0
408
+ }
409
+ var l int
410
+ _ = l
411
+ l = len(m.RpcService)
412
+ if l > 0 {
413
+ n += 1 + l + sov(uint64(l))
414
+ }
415
+ l = len(m.RpcMethod)
416
+ if l > 0 {
417
+ n += 1 + l + sov(uint64(l))
418
+ }
419
+ l = len(m.Data)
420
+ if l > 0 {
421
+ n += 1 + l + sov(uint64(l))
422
+ }
423
+ n += len(m.unknownFields)
424
+ return n
425
+ }
426
+
427
+ func (m *CallStartResp) SizeVT() (n int) {
428
+ if m == nil {
429
+ return 0
430
+ }
431
+ var l int
432
+ _ = l
433
+ l = len(m.Error)
434
+ if l > 0 {
435
+ n += 1 + l + sov(uint64(l))
436
+ }
437
+ n += len(m.unknownFields)
438
+ return n
439
+ }
440
+
441
+ func (m *CallData) SizeVT() (n int) {
442
+ if m == nil {
443
+ return 0
444
+ }
445
+ var l int
446
+ _ = l
447
+ l = len(m.Data)
448
+ if l > 0 {
449
+ n += 1 + l + sov(uint64(l))
450
+ }
451
+ if m.Complete {
452
+ n += 2
453
+ }
454
+ l = len(m.Error)
455
+ if l > 0 {
456
+ n += 1 + l + sov(uint64(l))
457
+ }
458
+ n += len(m.unknownFields)
459
+ return n
460
+ }
461
+
462
+ func sov(x uint64) (n int) {
463
+ return (bits.Len64(x|1) + 6) / 7
464
+ }
465
+ func soz(x uint64) (n int) {
466
+ return sov(uint64((x << 1) ^ uint64((int64(x) >> 63))))
467
+ }
468
+ func (m *Packet) UnmarshalVT(dAtA []byte) error {
469
+ l := len(dAtA)
470
+ iNdEx := 0
471
+ for iNdEx < l {
472
+ preIndex := iNdEx
473
+ var wire uint64
474
+ for shift := uint(0); ; shift += 7 {
475
+ if shift >= 64 {
476
+ return ErrIntOverflow
477
+ }
478
+ if iNdEx >= l {
479
+ return io.ErrUnexpectedEOF
480
+ }
481
+ b := dAtA[iNdEx]
482
+ iNdEx++
483
+ wire |= uint64(b&0x7F) << shift
484
+ if b < 0x80 {
485
+ break
486
+ }
487
+ }
488
+ fieldNum := int32(wire >> 3)
489
+ wireType := int(wire & 0x7)
490
+ if wireType == 4 {
491
+ return fmt.Errorf("proto: Packet: wiretype end group for non-group")
492
+ }
493
+ if fieldNum <= 0 {
494
+ return fmt.Errorf("proto: Packet: illegal tag %d (wire type %d)", fieldNum, wire)
495
+ }
496
+ switch fieldNum {
497
+ case 1:
498
+ if wireType != 2 {
499
+ return fmt.Errorf("proto: wrong wireType = %d for field CallStart", wireType)
500
+ }
501
+ var msglen int
502
+ for shift := uint(0); ; shift += 7 {
503
+ if shift >= 64 {
504
+ return ErrIntOverflow
505
+ }
506
+ if iNdEx >= l {
507
+ return io.ErrUnexpectedEOF
508
+ }
509
+ b := dAtA[iNdEx]
510
+ iNdEx++
511
+ msglen |= int(b&0x7F) << shift
512
+ if b < 0x80 {
513
+ break
514
+ }
515
+ }
516
+ if msglen < 0 {
517
+ return ErrInvalidLength
518
+ }
519
+ postIndex := iNdEx + msglen
520
+ if postIndex < 0 {
521
+ return ErrInvalidLength
522
+ }
523
+ if postIndex > l {
524
+ return io.ErrUnexpectedEOF
525
+ }
526
+ if oneof, ok := m.Body.(*Packet_CallStart); ok {
527
+ if err := oneof.CallStart.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
528
+ return err
529
+ }
530
+ } else {
531
+ v := &CallStart{}
532
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
533
+ return err
534
+ }
535
+ m.Body = &Packet_CallStart{v}
536
+ }
537
+ iNdEx = postIndex
538
+ case 2:
539
+ if wireType != 2 {
540
+ return fmt.Errorf("proto: wrong wireType = %d for field CallStartResp", wireType)
541
+ }
542
+ var msglen int
543
+ for shift := uint(0); ; shift += 7 {
544
+ if shift >= 64 {
545
+ return ErrIntOverflow
546
+ }
547
+ if iNdEx >= l {
548
+ return io.ErrUnexpectedEOF
549
+ }
550
+ b := dAtA[iNdEx]
551
+ iNdEx++
552
+ msglen |= int(b&0x7F) << shift
553
+ if b < 0x80 {
554
+ break
555
+ }
556
+ }
557
+ if msglen < 0 {
558
+ return ErrInvalidLength
559
+ }
560
+ postIndex := iNdEx + msglen
561
+ if postIndex < 0 {
562
+ return ErrInvalidLength
563
+ }
564
+ if postIndex > l {
565
+ return io.ErrUnexpectedEOF
566
+ }
567
+ if oneof, ok := m.Body.(*Packet_CallStartResp); ok {
568
+ if err := oneof.CallStartResp.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
569
+ return err
570
+ }
571
+ } else {
572
+ v := &CallStartResp{}
573
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
574
+ return err
575
+ }
576
+ m.Body = &Packet_CallStartResp{v}
577
+ }
578
+ iNdEx = postIndex
579
+ case 3:
580
+ if wireType != 2 {
581
+ return fmt.Errorf("proto: wrong wireType = %d for field CallData", wireType)
582
+ }
583
+ var msglen int
584
+ for shift := uint(0); ; shift += 7 {
585
+ if shift >= 64 {
586
+ return ErrIntOverflow
587
+ }
588
+ if iNdEx >= l {
589
+ return io.ErrUnexpectedEOF
590
+ }
591
+ b := dAtA[iNdEx]
592
+ iNdEx++
593
+ msglen |= int(b&0x7F) << shift
594
+ if b < 0x80 {
595
+ break
596
+ }
597
+ }
598
+ if msglen < 0 {
599
+ return ErrInvalidLength
600
+ }
601
+ postIndex := iNdEx + msglen
602
+ if postIndex < 0 {
603
+ return ErrInvalidLength
604
+ }
605
+ if postIndex > l {
606
+ return io.ErrUnexpectedEOF
607
+ }
608
+ if oneof, ok := m.Body.(*Packet_CallData); ok {
609
+ if err := oneof.CallData.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
610
+ return err
611
+ }
612
+ } else {
613
+ v := &CallData{}
614
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
615
+ return err
616
+ }
617
+ m.Body = &Packet_CallData{v}
618
+ }
619
+ iNdEx = postIndex
620
+ default:
621
+ iNdEx = preIndex
622
+ skippy, err := skip(dAtA[iNdEx:])
623
+ if err != nil {
624
+ return err
625
+ }
626
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
627
+ return ErrInvalidLength
628
+ }
629
+ if (iNdEx + skippy) > l {
630
+ return io.ErrUnexpectedEOF
631
+ }
632
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
633
+ iNdEx += skippy
634
+ }
635
+ }
636
+
637
+ if iNdEx > l {
638
+ return io.ErrUnexpectedEOF
639
+ }
640
+ return nil
641
+ }
642
+ func (m *CallStart) UnmarshalVT(dAtA []byte) error {
643
+ l := len(dAtA)
644
+ iNdEx := 0
645
+ for iNdEx < l {
646
+ preIndex := iNdEx
647
+ var wire uint64
648
+ for shift := uint(0); ; shift += 7 {
649
+ if shift >= 64 {
650
+ return ErrIntOverflow
651
+ }
652
+ if iNdEx >= l {
653
+ return io.ErrUnexpectedEOF
654
+ }
655
+ b := dAtA[iNdEx]
656
+ iNdEx++
657
+ wire |= uint64(b&0x7F) << shift
658
+ if b < 0x80 {
659
+ break
660
+ }
661
+ }
662
+ fieldNum := int32(wire >> 3)
663
+ wireType := int(wire & 0x7)
664
+ if wireType == 4 {
665
+ return fmt.Errorf("proto: CallStart: wiretype end group for non-group")
666
+ }
667
+ if fieldNum <= 0 {
668
+ return fmt.Errorf("proto: CallStart: illegal tag %d (wire type %d)", fieldNum, wire)
669
+ }
670
+ switch fieldNum {
671
+ case 1:
672
+ if wireType != 2 {
673
+ return fmt.Errorf("proto: wrong wireType = %d for field RpcService", wireType)
674
+ }
675
+ var stringLen uint64
676
+ for shift := uint(0); ; shift += 7 {
677
+ if shift >= 64 {
678
+ return ErrIntOverflow
679
+ }
680
+ if iNdEx >= l {
681
+ return io.ErrUnexpectedEOF
682
+ }
683
+ b := dAtA[iNdEx]
684
+ iNdEx++
685
+ stringLen |= uint64(b&0x7F) << shift
686
+ if b < 0x80 {
687
+ break
688
+ }
689
+ }
690
+ intStringLen := int(stringLen)
691
+ if intStringLen < 0 {
692
+ return ErrInvalidLength
693
+ }
694
+ postIndex := iNdEx + intStringLen
695
+ if postIndex < 0 {
696
+ return ErrInvalidLength
697
+ }
698
+ if postIndex > l {
699
+ return io.ErrUnexpectedEOF
700
+ }
701
+ m.RpcService = string(dAtA[iNdEx:postIndex])
702
+ iNdEx = postIndex
703
+ case 2:
704
+ if wireType != 2 {
705
+ return fmt.Errorf("proto: wrong wireType = %d for field RpcMethod", wireType)
706
+ }
707
+ var stringLen uint64
708
+ for shift := uint(0); ; shift += 7 {
709
+ if shift >= 64 {
710
+ return ErrIntOverflow
711
+ }
712
+ if iNdEx >= l {
713
+ return io.ErrUnexpectedEOF
714
+ }
715
+ b := dAtA[iNdEx]
716
+ iNdEx++
717
+ stringLen |= uint64(b&0x7F) << shift
718
+ if b < 0x80 {
719
+ break
720
+ }
721
+ }
722
+ intStringLen := int(stringLen)
723
+ if intStringLen < 0 {
724
+ return ErrInvalidLength
725
+ }
726
+ postIndex := iNdEx + intStringLen
727
+ if postIndex < 0 {
728
+ return ErrInvalidLength
729
+ }
730
+ if postIndex > l {
731
+ return io.ErrUnexpectedEOF
732
+ }
733
+ m.RpcMethod = string(dAtA[iNdEx:postIndex])
734
+ iNdEx = postIndex
735
+ case 3:
736
+ if wireType != 2 {
737
+ return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
738
+ }
739
+ var byteLen int
740
+ for shift := uint(0); ; shift += 7 {
741
+ if shift >= 64 {
742
+ return ErrIntOverflow
743
+ }
744
+ if iNdEx >= l {
745
+ return io.ErrUnexpectedEOF
746
+ }
747
+ b := dAtA[iNdEx]
748
+ iNdEx++
749
+ byteLen |= int(b&0x7F) << shift
750
+ if b < 0x80 {
751
+ break
752
+ }
753
+ }
754
+ if byteLen < 0 {
755
+ return ErrInvalidLength
756
+ }
757
+ postIndex := iNdEx + byteLen
758
+ if postIndex < 0 {
759
+ return ErrInvalidLength
760
+ }
761
+ if postIndex > l {
762
+ return io.ErrUnexpectedEOF
763
+ }
764
+ m.Data = append(m.Data[:0], dAtA[iNdEx:postIndex]...)
765
+ if m.Data == nil {
766
+ m.Data = []byte{}
767
+ }
768
+ iNdEx = postIndex
769
+ default:
770
+ iNdEx = preIndex
771
+ skippy, err := skip(dAtA[iNdEx:])
772
+ if err != nil {
773
+ return err
774
+ }
775
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
776
+ return ErrInvalidLength
777
+ }
778
+ if (iNdEx + skippy) > l {
779
+ return io.ErrUnexpectedEOF
780
+ }
781
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
782
+ iNdEx += skippy
783
+ }
784
+ }
785
+
786
+ if iNdEx > l {
787
+ return io.ErrUnexpectedEOF
788
+ }
789
+ return nil
790
+ }
791
+ func (m *CallStartResp) UnmarshalVT(dAtA []byte) error {
792
+ l := len(dAtA)
793
+ iNdEx := 0
794
+ for iNdEx < l {
795
+ preIndex := iNdEx
796
+ var wire uint64
797
+ for shift := uint(0); ; shift += 7 {
798
+ if shift >= 64 {
799
+ return ErrIntOverflow
800
+ }
801
+ if iNdEx >= l {
802
+ return io.ErrUnexpectedEOF
803
+ }
804
+ b := dAtA[iNdEx]
805
+ iNdEx++
806
+ wire |= uint64(b&0x7F) << shift
807
+ if b < 0x80 {
808
+ break
809
+ }
810
+ }
811
+ fieldNum := int32(wire >> 3)
812
+ wireType := int(wire & 0x7)
813
+ if wireType == 4 {
814
+ return fmt.Errorf("proto: CallStartResp: wiretype end group for non-group")
815
+ }
816
+ if fieldNum <= 0 {
817
+ return fmt.Errorf("proto: CallStartResp: illegal tag %d (wire type %d)", fieldNum, wire)
818
+ }
819
+ switch fieldNum {
820
+ case 1:
821
+ if wireType != 2 {
822
+ return fmt.Errorf("proto: wrong wireType = %d for field Error", wireType)
823
+ }
824
+ var stringLen uint64
825
+ for shift := uint(0); ; shift += 7 {
826
+ if shift >= 64 {
827
+ return ErrIntOverflow
828
+ }
829
+ if iNdEx >= l {
830
+ return io.ErrUnexpectedEOF
831
+ }
832
+ b := dAtA[iNdEx]
833
+ iNdEx++
834
+ stringLen |= uint64(b&0x7F) << shift
835
+ if b < 0x80 {
836
+ break
837
+ }
838
+ }
839
+ intStringLen := int(stringLen)
840
+ if intStringLen < 0 {
841
+ return ErrInvalidLength
842
+ }
843
+ postIndex := iNdEx + intStringLen
844
+ if postIndex < 0 {
845
+ return ErrInvalidLength
846
+ }
847
+ if postIndex > l {
848
+ return io.ErrUnexpectedEOF
849
+ }
850
+ m.Error = string(dAtA[iNdEx:postIndex])
851
+ iNdEx = postIndex
852
+ default:
853
+ iNdEx = preIndex
854
+ skippy, err := skip(dAtA[iNdEx:])
855
+ if err != nil {
856
+ return err
857
+ }
858
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
859
+ return ErrInvalidLength
860
+ }
861
+ if (iNdEx + skippy) > l {
862
+ return io.ErrUnexpectedEOF
863
+ }
864
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
865
+ iNdEx += skippy
866
+ }
867
+ }
868
+
869
+ if iNdEx > l {
870
+ return io.ErrUnexpectedEOF
871
+ }
872
+ return nil
873
+ }
874
+ func (m *CallData) UnmarshalVT(dAtA []byte) error {
875
+ l := len(dAtA)
876
+ iNdEx := 0
877
+ for iNdEx < l {
878
+ preIndex := iNdEx
879
+ var wire uint64
880
+ for shift := uint(0); ; shift += 7 {
881
+ if shift >= 64 {
882
+ return ErrIntOverflow
883
+ }
884
+ if iNdEx >= l {
885
+ return io.ErrUnexpectedEOF
886
+ }
887
+ b := dAtA[iNdEx]
888
+ iNdEx++
889
+ wire |= uint64(b&0x7F) << shift
890
+ if b < 0x80 {
891
+ break
892
+ }
893
+ }
894
+ fieldNum := int32(wire >> 3)
895
+ wireType := int(wire & 0x7)
896
+ if wireType == 4 {
897
+ return fmt.Errorf("proto: CallData: wiretype end group for non-group")
898
+ }
899
+ if fieldNum <= 0 {
900
+ return fmt.Errorf("proto: CallData: illegal tag %d (wire type %d)", fieldNum, wire)
901
+ }
902
+ switch fieldNum {
903
+ case 1:
904
+ if wireType != 2 {
905
+ return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
906
+ }
907
+ var byteLen int
908
+ for shift := uint(0); ; shift += 7 {
909
+ if shift >= 64 {
910
+ return ErrIntOverflow
911
+ }
912
+ if iNdEx >= l {
913
+ return io.ErrUnexpectedEOF
914
+ }
915
+ b := dAtA[iNdEx]
916
+ iNdEx++
917
+ byteLen |= int(b&0x7F) << shift
918
+ if b < 0x80 {
919
+ break
920
+ }
921
+ }
922
+ if byteLen < 0 {
923
+ return ErrInvalidLength
924
+ }
925
+ postIndex := iNdEx + byteLen
926
+ if postIndex < 0 {
927
+ return ErrInvalidLength
928
+ }
929
+ if postIndex > l {
930
+ return io.ErrUnexpectedEOF
931
+ }
932
+ m.Data = append(m.Data[:0], dAtA[iNdEx:postIndex]...)
933
+ if m.Data == nil {
934
+ m.Data = []byte{}
935
+ }
936
+ iNdEx = postIndex
937
+ case 2:
938
+ if wireType != 0 {
939
+ return fmt.Errorf("proto: wrong wireType = %d for field Complete", wireType)
940
+ }
941
+ var v int
942
+ for shift := uint(0); ; shift += 7 {
943
+ if shift >= 64 {
944
+ return ErrIntOverflow
945
+ }
946
+ if iNdEx >= l {
947
+ return io.ErrUnexpectedEOF
948
+ }
949
+ b := dAtA[iNdEx]
950
+ iNdEx++
951
+ v |= int(b&0x7F) << shift
952
+ if b < 0x80 {
953
+ break
954
+ }
955
+ }
956
+ m.Complete = bool(v != 0)
957
+ case 3:
958
+ if wireType != 2 {
959
+ return fmt.Errorf("proto: wrong wireType = %d for field Error", wireType)
960
+ }
961
+ var stringLen uint64
962
+ for shift := uint(0); ; shift += 7 {
963
+ if shift >= 64 {
964
+ return ErrIntOverflow
965
+ }
966
+ if iNdEx >= l {
967
+ return io.ErrUnexpectedEOF
968
+ }
969
+ b := dAtA[iNdEx]
970
+ iNdEx++
971
+ stringLen |= uint64(b&0x7F) << shift
972
+ if b < 0x80 {
973
+ break
974
+ }
975
+ }
976
+ intStringLen := int(stringLen)
977
+ if intStringLen < 0 {
978
+ return ErrInvalidLength
979
+ }
980
+ postIndex := iNdEx + intStringLen
981
+ if postIndex < 0 {
982
+ return ErrInvalidLength
983
+ }
984
+ if postIndex > l {
985
+ return io.ErrUnexpectedEOF
986
+ }
987
+ m.Error = string(dAtA[iNdEx:postIndex])
988
+ iNdEx = postIndex
989
+ default:
990
+ iNdEx = preIndex
991
+ skippy, err := skip(dAtA[iNdEx:])
992
+ if err != nil {
993
+ return err
994
+ }
995
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
996
+ return ErrInvalidLength
997
+ }
998
+ if (iNdEx + skippy) > l {
999
+ return io.ErrUnexpectedEOF
1000
+ }
1001
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
1002
+ iNdEx += skippy
1003
+ }
1004
+ }
1005
+
1006
+ if iNdEx > l {
1007
+ return io.ErrUnexpectedEOF
1008
+ }
1009
+ return nil
1010
+ }
1011
+ func skip(dAtA []byte) (n int, err error) {
1012
+ l := len(dAtA)
1013
+ iNdEx := 0
1014
+ depth := 0
1015
+ for iNdEx < l {
1016
+ var wire uint64
1017
+ for shift := uint(0); ; shift += 7 {
1018
+ if shift >= 64 {
1019
+ return 0, ErrIntOverflow
1020
+ }
1021
+ if iNdEx >= l {
1022
+ return 0, io.ErrUnexpectedEOF
1023
+ }
1024
+ b := dAtA[iNdEx]
1025
+ iNdEx++
1026
+ wire |= (uint64(b) & 0x7F) << shift
1027
+ if b < 0x80 {
1028
+ break
1029
+ }
1030
+ }
1031
+ wireType := int(wire & 0x7)
1032
+ switch wireType {
1033
+ case 0:
1034
+ for shift := uint(0); ; shift += 7 {
1035
+ if shift >= 64 {
1036
+ return 0, ErrIntOverflow
1037
+ }
1038
+ if iNdEx >= l {
1039
+ return 0, io.ErrUnexpectedEOF
1040
+ }
1041
+ iNdEx++
1042
+ if dAtA[iNdEx-1] < 0x80 {
1043
+ break
1044
+ }
1045
+ }
1046
+ case 1:
1047
+ iNdEx += 8
1048
+ case 2:
1049
+ var length int
1050
+ for shift := uint(0); ; shift += 7 {
1051
+ if shift >= 64 {
1052
+ return 0, ErrIntOverflow
1053
+ }
1054
+ if iNdEx >= l {
1055
+ return 0, io.ErrUnexpectedEOF
1056
+ }
1057
+ b := dAtA[iNdEx]
1058
+ iNdEx++
1059
+ length |= (int(b) & 0x7F) << shift
1060
+ if b < 0x80 {
1061
+ break
1062
+ }
1063
+ }
1064
+ if length < 0 {
1065
+ return 0, ErrInvalidLength
1066
+ }
1067
+ iNdEx += length
1068
+ case 3:
1069
+ depth++
1070
+ case 4:
1071
+ if depth == 0 {
1072
+ return 0, ErrUnexpectedEndOfGroup
1073
+ }
1074
+ depth--
1075
+ case 5:
1076
+ iNdEx += 4
1077
+ default:
1078
+ return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
1079
+ }
1080
+ if iNdEx < 0 {
1081
+ return 0, ErrInvalidLength
1082
+ }
1083
+ if depth == 0 {
1084
+ return iNdEx, nil
1085
+ }
1086
+ }
1087
+ return 0, io.ErrUnexpectedEOF
1088
+ }
1089
+
1090
+ var (
1091
+ ErrInvalidLength = fmt.Errorf("proto: negative length found during unmarshaling")
1092
+ ErrIntOverflow = fmt.Errorf("proto: integer overflow")
1093
+ ErrUnexpectedEndOfGroup = fmt.Errorf("proto: unexpected end of group")
1094
+ )