pub enum BasicEncoder {
LE(LittleEndianBasicEncoder),
BE(BigEndianBasicEncoder),
}
Expand description
A basic encoder with support for both Little Endian an Big Endian encoding, decided at run-time. Since only two values are possible, this enum may become more practical and efficient than relying on trait objects.
Variants§
Trait Implementations§
Source§impl BasicEncode for BasicEncoder
impl BasicEncode for BasicEncoder
Source§fn endianness(&self) -> Endianness
fn endianness(&self) -> Endianness
Retrieve the encoder’s endianness.
Source§fn encode_us<S>(&self, to: S, value: u16) -> Result<()>where
S: Write,
fn encode_us<S>(&self, to: S, value: u16) -> Result<()>where
S: Write,
Encode an unsigned short value to the given writer.
Source§fn encode_ul<S>(&self, to: S, value: u32) -> Result<()>where
S: Write,
fn encode_ul<S>(&self, to: S, value: u32) -> Result<()>where
S: Write,
Encode an unsigned long value to the given writer.
Source§fn encode_uv<S>(&self, to: S, value: u64) -> Result<()>where
S: Write,
fn encode_uv<S>(&self, to: S, value: u64) -> Result<()>where
S: Write,
Encode an unsigned very long value to the given writer.
Source§fn encode_ss<S>(&self, to: S, value: i16) -> Result<()>where
S: Write,
fn encode_ss<S>(&self, to: S, value: i16) -> Result<()>where
S: Write,
Encode a signed short value to the given writer.
Source§fn encode_sl<S>(&self, to: S, value: i32) -> Result<()>where
S: Write,
fn encode_sl<S>(&self, to: S, value: i32) -> Result<()>where
S: Write,
Encode a signed long value to the given writer.
Source§fn encode_sv<S>(&self, to: S, value: i64) -> Result<()>where
S: Write,
fn encode_sv<S>(&self, to: S, value: i64) -> Result<()>where
S: Write,
Encode a signed very long value to the given writer.
Source§fn encode_fl<S>(&self, to: S, value: f32) -> Result<()>where
S: Write,
fn encode_fl<S>(&self, to: S, value: f32) -> Result<()>where
S: Write,
Encode a single precision float value to the given writer.
Source§fn encode_fd<S>(&self, to: S, value: f64) -> Result<()>where
S: Write,
fn encode_fd<S>(&self, to: S, value: f64) -> Result<()>where
S: Write,
Encode a double precision float value to the given writer.
Source§fn with_encoder<T, F1, F2>(&self, f_le: F1, f_be: F2) -> T
fn with_encoder<T, F1, F2>(&self, f_le: F1, f_be: F2) -> T
If this encoder is in Little Endian, evaluate the first function.
Otherwise, evaluate the second one.
Source§fn encode_primitive<W>(&self, to: W, value: &PrimitiveValue) -> Result<usize>where
W: Write,
fn encode_primitive<W>(&self, to: W, value: &PrimitiveValue) -> Result<usize>where
W: Write,
Encode a primitive value to the given writer. The default implementation
delegates to the other value encoding methods.
Source§impl Clone for BasicEncoder
impl Clone for BasicEncoder
Source§fn clone(&self) -> BasicEncoder
fn clone(&self) -> BasicEncoder
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for BasicEncoder
impl Debug for BasicEncoder
Source§impl PartialEq for BasicEncoder
impl PartialEq for BasicEncoder
impl StructuralPartialEq for BasicEncoder
Auto Trait Implementations§
impl Freeze for BasicEncoder
impl RefUnwindSafe for BasicEncoder
impl Send for BasicEncoder
impl Sync for BasicEncoder
impl Unpin for BasicEncoder
impl UnwindSafe for BasicEncoder
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more