MCPcopy Create free account
hub / github.com/segmentio/encoding / ReadMessage

Method ReadMessage

thrift/compact.go:88–113  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

86}
87
88func (r *compactReader) ReadMessage() (Message, error) {
89 m := Message{}
90
91 b0, err := r.ReadByte()
92 if err != nil {
93 return m, err
94 }
95 if b0 != 0x82 {
96 return m, fmt.Errorf("invalid protocol id found when reading thrift message: %#x", b0)
97 }
98
99 b1, err := r.ReadByte()
100 if err != nil {
101 return m, dontExpectEOF(err)
102 }
103
104 seqID, err := r.readUvarint("seq id", math.MaxInt32)
105 if err != nil {
106 return m, dontExpectEOF(err)
107 }
108
109 m.Type = MessageType(b1) & 0x7
110 m.SeqID = int32(seqID)
111 m.Name, err = r.ReadString()
112 return m, dontExpectEOF(err)
113}
114
115func (r *compactReader) ReadField() (Field, error) {
116 f := Field{}

Callers

nothing calls this directly

Calls 5

ReadByteMethod · 0.95
readUvarintMethod · 0.95
ReadStringMethod · 0.95
dontExpectEOFFunction · 0.85
MessageTypeTypeAlias · 0.85

Tested by

no test coverage detected