pub struct Encoder<'a> { /* private fields */ }Expand description
BER-TLV encoder.
Implementations§
source§impl<'a> Encoder<'a>
impl<'a> Encoder<'a>
sourcepub fn new(bytes: &'a mut [u8]) -> Self
pub fn new(bytes: &'a mut [u8]) -> Self
Create a new encoder with the given byte slice as a backing buffer.
sourcepub fn encode<T: Encodable>(&mut self, encodable: &T) -> Result<()>
pub fn encode<T: Encodable>(&mut self, encodable: &T) -> Result<()>
Encode a value which impls the Encodable trait.
sourcepub fn error<T>(&mut self, kind: ErrorKind) -> Result<T>
pub fn error<T>(&mut self, kind: ErrorKind) -> Result<T>
Return an error with the given ErrorKind, annotating it with
context about where the error occurred.
sourcepub fn finish(self) -> Result<&'a [u8]>
pub fn finish(self) -> Result<&'a [u8]>
Finish encoding to the buffer, returning a slice containing the data written to the buffer.