pub struct Encoder<'a> { /* private fields */ }
Expand description
DER encoder.
Implementations
sourceimpl<'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: Encode>(&mut self, encodable: &T) -> Result<()>
pub fn encode<T: Encode>(&mut self, encodable: &T) -> Result<()>
Encode a value which impls the Encode
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 value_error(&mut self, tag: Tag) -> Error
pub fn value_error(&mut self, tag: Tag) -> Error
Return an error for an invalid value with the given tag.
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.
sourcepub fn context_specific<T>(
&mut self,
tag_number: TagNumber,
tag_mode: TagMode,
value: &T
) -> Result<()> where
T: EncodeValue + Tagged,
pub fn context_specific<T>(
&mut self,
tag_number: TagNumber,
tag_mode: TagMode,
value: &T
) -> Result<()> where
T: EncodeValue + Tagged,
Encode a CONTEXT-SPECIFIC
field with the provided tag number and mode.
Trait Implementations
Auto Trait Implementations
impl<'a> RefUnwindSafe for Encoder<'a>
impl<'a> Send for Encoder<'a>
impl<'a> Sync for Encoder<'a>
impl<'a> Unpin for Encoder<'a>
impl<'a> !UnwindSafe for Encoder<'a>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more