[−][src]Enum bcder::Mode
The BER Mode.
X.680 defines not one but three sets of related encoding rules. All three follow the same basic ideas but implement them in slightly different ways.
This type represents these rules. The decode
method provides a way to
decode a source using the specific decoding mode. You can also change
the decoding mode later on through the set_mode
methods of Primitive
and Constructed
.
Variants
Basic Encoding Rules.
These are the most flexible rules, allowing alternative encodings for some types as well as indefinite length values.
Canonical Encoding Rules.
These rules always employ indefinite length encoding for constructed values and the shortest possible form for primitive values. There are additional restrictions for certain types.
Distinguished Encoding Rules.
These rules always employ definite length values and require the shortest possible encoding. Additional rules apply to some types.
Implementations
impl Mode
[src]
pub fn decode<S, F, T>(self, source: S, op: F) -> Result<T, S::Err> where
S: Source,
F: FnOnce(&mut Constructed<'_, S>) -> Result<T, S::Err>,
[src]
S: Source,
F: FnOnce(&mut Constructed<'_, S>) -> Result<T, S::Err>,
Decode a source using a specific mode.
The method will attempt to decode source
using the rules represented
by this value. The closure op
will be given the content of the
source as a sequence of values. The closure does not need to process
all values in the source.
pub fn is_ber(self) -> bool
[src]
Returns whether the mode is Mode::Ber
.
pub fn is_cer(self) -> bool
[src]
Returns whether the mode is Mode::Cer
.
pub fn is_der(self) -> bool
[src]
Returns whether the mode is Mode::Der
.
Trait Implementations
impl Clone for Mode
[src]
impl Copy for Mode
[src]
impl Debug for Mode
[src]
impl Default for Mode
[src]
impl Eq for Mode
[src]
impl PartialEq<Mode> for Mode
[src]
pub fn eq(&self, other: &Mode) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl StructuralEq for Mode
[src]
impl StructuralPartialEq for Mode
[src]
Auto Trait Implementations
impl RefUnwindSafe for Mode
[src]
impl Send for Mode
[src]
impl Sync for Mode
[src]
impl Unpin for Mode
[src]
impl UnwindSafe for Mode
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,