Enum ps_datachunk::DataChunk
source · pub enum DataChunk<'lt> {
Aligned(AlignedDataChunk),
Borrowed(BorrowedDataChunk<'lt>),
Mbuf(MbufDataChunk<'lt>),
Owned(OwnedDataChunk),
Shared(SharedDataChunk),
}
Expand description
represents a chunk of data that is either owned or pointed to
Variants§
Aligned(AlignedDataChunk)
Borrowed(BorrowedDataChunk<'lt>)
Mbuf(MbufDataChunk<'lt>)
Owned(OwnedDataChunk)
Implementations§
source§impl<'lt> DataChunk<'lt>
impl<'lt> DataChunk<'lt>
source§impl<'lt> DataChunk<'lt>
impl<'lt> DataChunk<'lt>
pub fn data_ref(&self) -> &[u8] ⓘ
pub fn hash_ref(&self) -> &[u8] ⓘ
pub fn hash(&self) -> HashCow<'_>
sourcepub fn into_owned(self) -> OwnedDataChunk
pub fn into_owned(self) -> OwnedDataChunk
Unwraps this DataChunk into an OwnedDataChunk
.
DataChunk::Borrowed()
allocates a newOwnedDataChunk
, recalculates hashDataChunk::Mbuf()
allocates a newOwnedDataChunk
, recalculates hashDataChunk::Aligned()
indirectly invokes the OwnedDataChunk deserializerDataChunk::Owned()
is a no-op
sourcepub fn to_owned(&self) -> OwnedDataChunk
pub fn to_owned(&self) -> OwnedDataChunk
Gets an owned copy of this DataChunk.
sourcepub fn serialize_into(self) -> Vec<u8>
pub fn serialize_into(self) -> Vec<u8>
convert this DataChunk into a Vec<u8>
DataChunk::Mbuf()
is copied via.to_owned()
sourcepub fn decrypt(
&self,
key: &[u8],
compressor: &Compressor,
) -> Result<OwnedDataChunk>
pub fn decrypt( &self, key: &[u8], compressor: &Compressor, ) -> Result<OwnedDataChunk>
Decrypts this DataChunk with a given key.
sourcepub fn encrypt(&self, compressor: &Compressor) -> Result<EncryptedDataChunk>
pub fn encrypt(&self, compressor: &Compressor) -> Result<EncryptedDataChunk>
Encrypts this DataChunk.
sourcepub fn encrypt_mut(
&mut self,
compressor: &Compressor,
) -> Result<EncryptedDataChunk>
pub fn encrypt_mut( &mut self, compressor: &Compressor, ) -> Result<EncryptedDataChunk>
Encrypts this DataChunk using self.data
if owned.
pub fn guarantee_alignment<T>(self) -> DataChunk<'lt>
Trait Implementations§
source§impl<'lt> DataChunkTrait for DataChunk<'lt>
impl<'lt> DataChunkTrait for DataChunk<'lt>
fn data_ref(&self) -> &[u8] ⓘ
fn hash_ref(&self) -> &[u8] ⓘ
fn hash(&self) -> HashCow<'_>
fn encrypt(&self, compressor: &Compressor) -> Result<EncryptedDataChunk>
fn decrypt(&self, key: &[u8], compressor: &Compressor) -> Result<OwnedDataChunk>
fn to_datachunk(&self) -> DataChunk<'_>
fn align(&self) -> AlignedDataChunk
fn borrow(&self) -> BorrowedDataChunk<'_>
fn to_owned(&self) -> OwnedDataChunk
fn try_as<T: Archive>(&self) -> Result<TypedDataChunk<'_, T>>
source§impl<'lt> From<&DataChunk<'lt>> for AlignedDataChunk
impl<'lt> From<&DataChunk<'lt>> for AlignedDataChunk
source§impl<'lt> From<AlignedDataChunk> for DataChunk<'lt>
impl<'lt> From<AlignedDataChunk> for DataChunk<'lt>
source§fn from(chunk: AlignedDataChunk) -> Self
fn from(chunk: AlignedDataChunk) -> Self
Converts to this type from the input type.
source§impl<'lt> From<BorrowedDataChunk<'lt>> for DataChunk<'lt>
impl<'lt> From<BorrowedDataChunk<'lt>> for DataChunk<'lt>
source§fn from(chunk: BorrowedDataChunk<'lt>) -> Self
fn from(chunk: BorrowedDataChunk<'lt>) -> Self
Converts to this type from the input type.
source§impl<'lt> From<DataChunk<'lt>> for AlignedDataChunk
impl<'lt> From<DataChunk<'lt>> for AlignedDataChunk
source§impl<'lt> From<DataChunk<'lt>> for OwnedDataChunk
impl<'lt> From<DataChunk<'lt>> for OwnedDataChunk
source§impl<'lt> From<MbufDataChunk<'lt>> for DataChunk<'lt>
impl<'lt> From<MbufDataChunk<'lt>> for DataChunk<'lt>
source§fn from(chunk: MbufDataChunk<'lt>) -> Self
fn from(chunk: MbufDataChunk<'lt>) -> Self
Converts to this type from the input type.
source§impl<'lt> From<OwnedDataChunk> for DataChunk<'lt>
impl<'lt> From<OwnedDataChunk> for DataChunk<'lt>
source§fn from(chunk: OwnedDataChunk) -> Self
fn from(chunk: OwnedDataChunk) -> Self
Converts to this type from the input type.
source§impl<'lt, T> TryFrom<DataChunk<'lt>> for TypedDataChunk<'lt, T>
impl<'lt, T> TryFrom<DataChunk<'lt>> for TypedDataChunk<'lt, T>
§type Error = PsDataChunkError
type Error = PsDataChunkError
The type returned in the event of a conversion error.
Auto Trait Implementations§
impl<'lt> Freeze for DataChunk<'lt>
impl<'lt> RefUnwindSafe for DataChunk<'lt>
impl<'lt> Send for DataChunk<'lt>
impl<'lt> Sync for DataChunk<'lt>
impl<'lt> Unpin for DataChunk<'lt>
impl<'lt> UnwindSafe for DataChunk<'lt>
Blanket Implementations§
source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§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<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
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>
Gets the layout of the type.