MCPcopy
hub / github.com/ugorji/go / CodecEncodeSelf

Method CodecEncodeSelf

codec/values_codecgen_generated_test.go:9343–9559  ·  view source on GitHub ↗
(e *Encoder)

Source from the content-addressed store, hash-verified

9341
9342func (AnonInTestStrucIntf) codecSelferViaCodecgen() {}
9343func (x *AnonInTestStrucIntf) CodecEncodeSelf(e *Encoder) {
9344 var h codecSelfer19780
9345 z, r := GenHelper().Encoder(e)
9346 _, _, _ = h, z, r
9347 if z.EncBasicHandle().CheckCircularRef {
9348 z.EncEncode(x)
9349 return
9350 }
9351 if x == nil {
9352 r.EncodeNil()
9353 } else {
9354 yy2arr2 := z.EncBasicHandle().StructToArray
9355 _ = yy2arr2
9356 const yyr2 bool = false // struct tag has 'toArray'
9357 var yyn7 bool = x.Tptr == nil
9358 if yyr2 || yy2arr2 {
9359 z.EncWriteArrayStart(5)
9360 z.EncWriteArrayElem()
9361 if x.Islice == nil {
9362 r.EncodeNil()
9363 } else {
9364 z.F.EncSliceIntfV(x.Islice, e)
9365 } // end block: if x.Islice slice == nil
9366 z.EncWriteArrayElem()
9367 if x.Ms == nil {
9368 r.EncodeNil()
9369 } else {
9370 z.F.EncMapStringIntfV(x.Ms, e)
9371 } // end block: if x.Ms map == nil
9372 z.EncWriteArrayElem()
9373 z.EncFallback(x.Nintf)
9374 z.EncWriteArrayElem()
9375 if z.EncBasicHandle().TimeBuiltin() {
9376 r.EncodeTime(x.T)
9377 } else if yyxt11 := z.Extension(x.T); yyxt11 != nil {
9378 z.EncExtension(x.T, yyxt11)
9379 } else if z.EncBinary() {
9380 z.EncBinaryMarshal(x.T)
9381 } else if !z.EncBinary() && z.IsJSONHandle() {
9382 z.EncJSONMarshal(x.T)
9383 } else {
9384 z.EncFallback(x.T)
9385 }
9386 if yyn7 {
9387 z.EncWriteArrayElem()
9388 r.EncodeNil()
9389 } else {
9390 z.EncWriteArrayElem()
9391 yy12 := *x.Tptr
9392 if z.EncBasicHandle().TimeBuiltin() {
9393 r.EncodeTime(yy12)
9394 } else if yyxt13 := z.Extension(yy12); yyxt13 != nil {
9395 z.EncExtension(yy12, yyxt13)
9396 } else if z.EncBinary() {
9397 z.EncBinaryMarshal(yy12)
9398 } else if !z.EncBinary() && z.IsJSONHandle() {
9399 z.EncJSONMarshal(yy12)
9400 } else {

Callers

nothing calls this directly

Calls 15

GenHelperFunction · 0.85
EncoderMethod · 0.80
EncBasicHandleMethod · 0.80
EncEncodeMethod · 0.80
EncWriteArrayStartMethod · 0.80
EncWriteArrayElemMethod · 0.80
EncSliceIntfVMethod · 0.80
EncMapStringIntfVMethod · 0.80
EncFallbackMethod · 0.80
TimeBuiltinMethod · 0.80
EncExtensionMethod · 0.80
EncBinaryMethod · 0.80

Tested by

no test coverage detected