Enum rustls::crypto::cipher::OutboundChunks
source · pub enum OutboundChunks<'a> {
Single(&'a [u8]),
Multiple {
chunks: &'a [&'a [u8]],
start: usize,
end: usize,
},
}
Expand description
A collection of borrowed plaintext slices.
Warning: OutboundChunks does not guarantee that the simplest variant is used. Multiple can hold non fragmented or empty payloads.
Variants§
Single(&'a [u8])
A single byte slice. Contrary to Multiple
, this uses a single pointer indirection
Multiple
A collection of chunks (byte slices) and cursors to single out a fragmented range of bytes. OutboundChunks assumes that start <= end
Implementations§
source§impl<'a> OutboundChunks<'a>
impl<'a> OutboundChunks<'a>
sourcepub fn new(chunks: &'a [&'a [u8]]) -> Self
pub fn new(chunks: &'a [&'a [u8]]) -> Self
Create a payload from a slice of byte slices. If fragmented the cursors are added by default: start = 0, end = length
sourcepub fn copy_to_vec(&self, vec: &mut Vec<u8>)
pub fn copy_to_vec(&self, vec: &mut Vec<u8>)
Append all bytes to a vector
sourcepub fn split_at(&self, mid: usize) -> (Self, Self)
pub fn split_at(&self, mid: usize) -> (Self, Self)
Split self in two, around an index
Works similarly to split_at
in the core library, except it doesn’t panic if out of bound
Trait Implementations§
source§impl<'a> Clone for OutboundChunks<'a>
impl<'a> Clone for OutboundChunks<'a>
source§fn clone(&self) -> OutboundChunks<'a>
fn clone(&self) -> OutboundChunks<'a>
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<'a> Debug for OutboundChunks<'a>
impl<'a> Debug for OutboundChunks<'a>
Auto Trait Implementations§
impl<'a> Freeze for OutboundChunks<'a>
impl<'a> RefUnwindSafe for OutboundChunks<'a>
impl<'a> Send for OutboundChunks<'a>
impl<'a> Sync for OutboundChunks<'a>
impl<'a> Unpin for OutboundChunks<'a>
impl<'a> UnwindSafe for OutboundChunks<'a>
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)