pub struct Request { /* private fields */ }Expand description
One read, with the buffer its bytes land in.
The length wanted is the length of the buffer. There is no separate length field because two fields that have to agree are two fields that disagree eventually.
Implementations§
Source§impl Request
impl Request
Sourcepub fn new(offset: u64, len: usize) -> Self
pub fn new(offset: u64, len: usize) -> Self
A read of len bytes at offset, into a buffer allocated here.
Sourcepub fn reusing(offset: u64, buf: Vec<u8>) -> Self
pub fn reusing(offset: u64, buf: Vec<u8>) -> Self
A read at offset into a buffer the caller already has.
The buffer’s length is the length of the read, and its contents are overwritten. This is the form a scan uses on its second row group, because the alternative is allocating a column’s worth of page buffers per row group for the life of the query.
Sourcepub fn into_buffer(self) -> Vec<u8> ⓘ
pub fn into_buffer(self) -> Vec<u8> ⓘ
The destination buffer, taken out of the request.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Request
impl RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl UnsafeUnpin for Request
impl UnwindSafe for Request
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