func (r *responseStream) Error(ctx context.Context, num uint64, code [2]int, msg string) error { r.Lock() defer r.Unlock() if r.closed { apexctx.GetLogger(r.ctx).WithError(errStreamIsClosed).Error("responseStream.Error") return errStreamIsClosed } defer r.close(ctx) p := msgpackBytePool.Get().([]byte)[:0] defer msgpackBytePool.Put(p) // NOTE: `3` without headers! p = msgp.AppendArrayHeader(p, 3) p = msgp.AppendUint64(p, r.channel) p = msgp.AppendUint64(p, num) // code_category + error message p = msgp.AppendArrayHeader(p, 2) // code & category p = msgp.AppendArrayHeader(p, 2) p = msgp.AppendInt(p, code[0]) p = msgp.AppendInt(p, code[1]) // error message p = msgp.AppendString(p, msg) if _, err := r.wr.Write(p); err != nil { apexctx.GetLogger(r.ctx).WithError(err).Errorf("responseStream.Error") return err } return nil }
func (r *responseStream) Write(ctx context.Context, num uint64, data []byte) error { r.Lock() defer r.Unlock() if r.closed { apexctx.GetLogger(r.ctx).WithError(errStreamIsClosed).Error("responseStream.Write") return errStreamIsClosed } p := msgpackBytePool.Get().([]byte)[:0] defer msgpackBytePool.Put(p) // NOTE: `3` without headers! p = msgp.AppendArrayHeader(p, 3) p = msgp.AppendUint64(p, r.channel) p = msgp.AppendUint64(p, num) p = msgp.AppendArrayHeader(p, 1) p = msgp.AppendStringFromBytes(p, data) if _, err := r.wr.Write(p); err != nil { apexctx.GetLogger(r.ctx).WithError(err).Error("responseStream.Write") return err } return nil }
// MarshalMsg implements msgp.Marshaler func (z *Message) MarshalMsg(b []byte) (o []byte, err error) { o = msgp.Require(b, z.Msgsize()) // map header, size 5 // string "id" o = append(o, 0x85, 0xa2, 0x69, 0x64) o = msgp.AppendUint64(o, z.ID) // string "fn" o = append(o, 0xa2, 0x66, 0x6e) o = msgp.AppendString(o, z.Func) // string "args" o = append(o, 0xa4, 0x61, 0x72, 0x67, 0x73) o, err = z.Args.MarshalMsg(o) if err != nil { return } // string "result" o = append(o, 0xa6, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74) o, err = z.Result.MarshalMsg(o) if err != nil { return } // string "error" o = append(o, 0xa5, 0x65, 0x72, 0x72, 0x6f, 0x72) if z.Error == nil { o = msgp.AppendNil(o) } else { // map header, size 1 // string "msg" o = append(o, 0x81, 0xa3, 0x6d, 0x73, 0x67) o = msgp.AppendString(o, z.Error.Msg) } return }
// MarshalMsg implements msgp.Marshaler func (z *bitmapContainer) MarshalMsg(b []byte) (o []byte, err error) { o = msgp.Require(b, z.Msgsize()) // map header, size 2 // string "cardinality" o = append(o, 0x82, 0xab, 0x63, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79) o = msgp.AppendInt(o, z.cardinality) // string "bitmap" o = append(o, 0xa6, 0x62, 0x69, 0x74, 0x6d, 0x61, 0x70) o = msgp.AppendArrayHeader(o, uint32(len(z.bitmap))) for zxvk := range z.bitmap { o = msgp.AppendUint64(o, z.bitmap[zxvk]) } return }
// MarshalMsg implements msgp.Marshaler func (z *bitmapContainerShortIterator) MarshalMsg(b []byte) (o []byte, err error) { o = msgp.Require(b, z.Msgsize()) // map header, size 2 // string "ptr" o = append(o, 0x82, 0xa3, 0x70, 0x74, 0x72) if z.ptr == nil { o = msgp.AppendNil(o) } else { // map header, size 2 // string "cardinality" o = append(o, 0x82, 0xab, 0x63, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79) o = msgp.AppendInt(o, z.ptr.cardinality) // string "bitmap" o = append(o, 0xa6, 0x62, 0x69, 0x74, 0x6d, 0x61, 0x70) o = msgp.AppendArrayHeader(o, uint32(len(z.ptr.bitmap))) for zwht := range z.ptr.bitmap { o = msgp.AppendUint64(o, z.ptr.bitmap[zwht]) } } // string "i" o = append(o, 0xa1, 0x69) o = msgp.AppendInt(o, z.i) return }