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

Method MarshalTo

expr/node.pb.go:264–322  ·  view source on GitHub ↗
(data []byte)

Source from the content-addressed store, hash-verified

262}
263
264func (m *ExprPb) MarshalTo(data []byte) (int, error) {
265 var i int
266 _ = i
267 var l int
268 _ = l
269 if m.Op != nil {
270 data[i] = 0x8
271 i++
272 i = encodeVarintNode(data, i, uint64(*m.Op))
273 }
274 if len(m.Args) > 0 {
275 for _, msg := range m.Args {
276 data[i] = 0x12
277 i++
278 i = encodeVarintNode(data, i, uint64(msg.Size()))
279 n, err := msg.MarshalTo(data[i:])
280 if err != nil {
281 return 0, err
282 }
283 i += n
284 }
285 }
286 if m.Ident != nil {
287 data[i] = 0x22
288 i++
289 i = encodeVarintNode(data, i, uint64(len(*m.Ident)))
290 i += copy(data[i:], *m.Ident)
291 }
292 if m.Val != nil {
293 data[i] = 0x2a
294 i++
295 i = encodeVarintNode(data, i, uint64(len(*m.Val)))
296 i += copy(data[i:], *m.Val)
297 }
298 if m.Ival != nil {
299 data[i] = 0x30
300 i++
301 i = encodeVarintNode(data, i, uint64(*m.Ival))
302 }
303 if m.Bval != nil {
304 data[i] = 0x38
305 i++
306 if *m.Bval {
307 data[i] = 1
308 } else {
309 data[i] = 0
310 }
311 i++
312 }
313 if m.Fval != nil {
314 data[i] = 0x41
315 i++
316 i = encodeFixed64Node(data, i, uint64(math.Float64bits(float64(*m.Fval))))
317 }
318 if m.XXX_unrecognized != nil {
319 i += copy(data[i:], m.XXX_unrecognized)
320 }
321 return i, nil

Callers 9

MarshalMethod · 0.95
MarshalToMethod · 0.45
MarshalToMethod · 0.45
MarshalToMethod · 0.45
MarshalToMethod · 0.45
MarshalToMethod · 0.45
MarshalToMethod · 0.45
MarshalToMethod · 0.45
MarshalToMethod · 0.45

Calls 3

encodeVarintNodeFunction · 0.85
encodeFixed64NodeFunction · 0.85
SizeMethod · 0.45

Tested by

no test coverage detected