MCPcopy Create free account
hub / github.com/f0rr0/oliphaunt / parse_data_row

Method parse_data_row

src/protocol/parser.rs:242–260  ·  view source on GitHub ↗
(
        &self,
        length: usize,
        reader: &mut BufferReader<'_>,
    )

Source from the content-addressed store, hash-verified

240 }
241
242 fn parse_data_row(
243 &self,
244 length: usize,
245 reader: &mut BufferReader<'_>,
246 ) -> Result<BackendMessage> {
247 let field_count = reader.int16()? as usize;
248 let mut fields = Vec::with_capacity(field_count);
249 for _ in 0..field_count {
250 let len = reader.int32()?;
251 if len == -1 {
252 fields.push(None);
253 } else {
254 let len = len as usize;
255 let value = reader.string(len)?;
256 fields.push(Some(value));
257 }
258 }
259 Ok(BackendMessage::DataRow(DataRowMessage { length, fields }))
260 }
261
262 fn parse_parameter_status(
263 &self,

Callers 1

handle_packetMethod · 0.80

Calls 4

int16Method · 0.80
int32Method · 0.80
pushMethod · 0.80
stringMethod · 0.80

Tested by

no test coverage detected