pub struct VarintLength;Expand description
Variable-bit length encoding based using unsigned_varint crate, currently can handle lengths up to 2^63
Trait Implementations§
Source§impl Debug for VarintLength
impl Debug for VarintLength
Source§impl LengthCodec for VarintLength
impl LengthCodec for VarintLength
type Error = VarintLengthError
type Buffer = [u8; 10]
fn as_slice(buffer: &mut Self::Buffer) -> &mut [u8] ⓘ
Source§fn encode(length: usize, buf: &mut Self::Buffer) -> &[u8] ⓘ
fn encode(length: usize, buf: &mut Self::Buffer) -> &[u8] ⓘ
Encode into buffer and return part of buffer that was written to
Source§fn decode(buf: &[u8]) -> Result<(usize, &[u8]), Self::Error>
fn decode(buf: &[u8]) -> Result<(usize, &[u8]), Self::Error>
Decode from buffer, fails if length is formatted incorrectly, returns length and remaining buffer
fn decode_bytes(buf: &mut impl Buf) -> Result<usize, Self::Error>
async fn decode_async<'a, R: AsyncRead + Unpin>( reader: &'a mut R, ) -> Result<usize, WithIOError<Self::Error>>
Auto Trait Implementations§
impl Freeze for VarintLength
impl RefUnwindSafe for VarintLength
impl Send for VarintLength
impl Sync for VarintLength
impl Unpin for VarintLength
impl UnsafeUnpin for VarintLength
impl UnwindSafe for VarintLength
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.