MCPcopy
hub / github.com/tinylib/msgp / EncodeMsg

Method EncodeMsg

msgp/setof/generated.go:1560–1586  ·  view source on GitHub ↗

EncodeMsg encodes the message to the writer.

(writer *msgp.Writer)

Source from the content-addressed store, hash-verified

1558
1559// EncodeMsg encodes the message to the writer.
1560func (s Uint8Sorted) EncodeMsg(writer *msgp.Writer) error {
1561 if s == nil {
1562 return writer.WriteNil()
1563 }
1564 err := writer.WriteArrayHeader(uint32(len(s)))
1565 if err != nil {
1566 return err
1567 }
1568 keys := make([]uint8, 0, len(s))
1569 for k := range s {
1570 keys = append(keys, k)
1571 }
1572 slices.SortFunc(keys, func(a, b uint8) int {
1573 if a < b {
1574 return -1
1575 }
1576 return 1
1577 })
1578
1579 for _, k := range keys {
1580 err = writer.WriteUint8(k)
1581 if err != nil {
1582 return err
1583 }
1584 }
1585 return nil
1586}
1587
1588// MarshalMsg encodes the message to the bytes.
1589func (s Uint8Sorted) MarshalMsg(bytes []byte) ([]byte, error) {

Callers 1

Calls 3

WriteNilMethod · 0.80
WriteArrayHeaderMethod · 0.80
WriteUint8Method · 0.80

Tested by 1