MCPcopy Index your code
hub / github.com/ermak-dev/cloudpub / write_message

Function write_message

common/src/protocol.rs:326–348  ·  view source on GitHub ↗
(
    conn: &mut T,
    msg: &message::Message,
)

Source from the content-addressed store, hash-verified

324}
325
326pub async fn write_message<T: AsyncWrite + Unpin>(
327 conn: &mut T,
328 msg: &message::Message,
329) -> Result<()> {
330 let proto_msg = Message {
331 message: Some(msg.clone()),
332 };
333
334 debug!("Sending proto message: {:?}", msg);
335
336 let mut buf = BytesMut::new();
337 proto_msg
338 .encode(&mut buf)
339 .context("Failed to encode Protocol Buffers message")?;
340
341 let len = buf.len() as u32;
342 let len_bytes = len.to_le_bytes();
343
344 conn.write_all(&len_bytes).await?;
345 conn.write_all(&buf).await?;
346 conn.flush().await?;
347 Ok(())
348}
349
350impl FairGroup for message::Message {
351 fn group_id(&self) -> Option<u32> {

Callers 2

send_messageMethod · 0.85
send_messageMethod · 0.85

Calls 2

cloneMethod · 0.80
lenMethod · 0.80

Tested by

no test coverage detected