-
Notifications
You must be signed in to change notification settings - Fork 242
Open
Description
I want to store a Reader inside of a struct but it only uses a reference a does not implement Clone.
use super::capnp_error::CapnpError;
use capnp::{message::ReaderOptions, serialize_packed};
use std::io::Cursor;
pub struct ReaderWrapper<'a> {
reader: &'a Reader<'a>,
}
impl<'a> TryFrom<Vec<u8>> for ReaderWrapper<'a> {
type Error = CapnpError;
fn try_from(buffer: Vec<u8>) -> Result<ReaderWrapper<'a>, CapnpError> {
let reader =
&serialize_packed::read_message(&mut Cursor::new(buffer), ReaderOptions::new())?;
let typed_reader = reader.get_root::<Reader>()?;
Ok(ReaderWrapper {
reader: &typed_reader,
})
}
}Metadata
Metadata
Assignees
Labels
No labels