MCPcopy Index your code
hub / github.com/ugorji/go / encodeExtPreamble

Method encodeExtPreamble

codec/msgpack.go:327–350  ·  view source on GitHub ↗
(xtag byte, l int)

Source from the content-addressed store, hash-verified

325}
326
327func (e *msgpackEncDriver) encodeExtPreamble(xtag byte, l int) {
328 if l == 1 {
329 e.e.encWr.writen2(mpFixExt1, xtag)
330 } else if l == 2 {
331 e.e.encWr.writen2(mpFixExt2, xtag)
332 } else if l == 4 {
333 e.e.encWr.writen2(mpFixExt4, xtag)
334 } else if l == 8 {
335 e.e.encWr.writen2(mpFixExt8, xtag)
336 } else if l == 16 {
337 e.e.encWr.writen2(mpFixExt16, xtag)
338 } else if l < 256 {
339 e.e.encWr.writen2(mpExt8, byte(l))
340 e.e.encWr.writen1(xtag)
341 } else if l < 65536 {
342 e.e.encWr.writen1(mpExt16)
343 bigen.writeUint16(e.e.w(), uint16(l))
344 e.e.encWr.writen1(xtag)
345 } else {
346 e.e.encWr.writen1(mpExt32)
347 bigen.writeUint32(e.e.w(), uint32(l))
348 e.e.encWr.writen1(xtag)
349 }
350}
351
352func (e *msgpackEncDriver) WriteArrayStart(length int) {
353 e.writeContainerLen(msgpackContainerList, length)

Callers 3

EncodeTimeMethod · 0.95
EncodeExtMethod · 0.95
EncodeRawExtMethod · 0.95

Calls 5

writeUint16Method · 0.80
wMethod · 0.80
writeUint32Method · 0.80
writen2Method · 0.65
writen1Method · 0.65

Tested by

no test coverage detected