20 lines
466 B
Rust
20 lines
466 B
Rust
use crate::message::Message;
|
|
|
|
// this won't be needed in the near future, i want
|
|
// to do everything within Message
|
|
pub struct MessageReader {
|
|
pub buffer: Vec<u8>,
|
|
}
|
|
|
|
impl MessageReader {
|
|
pub fn new() -> Self {
|
|
Self { buffer: Vec::new() }
|
|
}
|
|
|
|
pub fn read(&mut self, data: &[u8]) -> anyhow::Result<Message> {
|
|
self.buffer.extend_from_slice(data);
|
|
let message = serde_json::from_slice(&self.buffer)?;
|
|
|
|
Ok(message)
|
|
}
|
|
}
|