pub struct Encoder { /* private fields */ }Expand description
Synchronous frame encoder constructed entirely from metadata with reusable codec storage.
The caller owns the frame index and must never encrypt different payloads with the same key/index. Use a fresh key for each immutable object. This type performs no I/O, scheduling, implicit indexing, or retries.
Implementations§
Source§impl Encoder
impl Encoder
Sourcepub fn encode_frame(
&mut self,
index: u64,
buffer: &mut Vec<u8>,
) -> Result<FrameSizes>
pub fn encode_frame( &mut self, index: u64, buffer: &mut Vec<u8>, ) -> Result<FrameSizes>
Replace raw bytes with stored bytes, returning lengths to append to metadata. Empty/oversized frames and out-of-policy indices are refused. On any error the buffer is cleared, but its allocation is retained.
This does not append metadata: the caller does that after successful I/O. The metadata builder enforces that a short fixed frame is the last frame.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Encoder
impl RefUnwindSafe for Encoder
impl Send for Encoder
impl Sync for Encoder
impl Unpin for Encoder
impl UnsafeUnpin for Encoder
impl UnwindSafe for Encoder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more