Thanks to visit codestin.com
Credit goes to docs.rs

Skip to main content

Blob

Struct Blob 

Source
pub struct Blob<'repo> {
    pub id: ObjectId,
    pub data: Vec<u8>,
    pub repo: &'repo Repository,
}
Expand description

A blob along with access to its owning repository.

Fields§

§id: ObjectId

The id of the tree

§data: Vec<u8>

The blob’s data.

§repo: &'repo Repository

The owning repository.

Implementations§

Source§

impl Blob<'_>

Remove Lifetime

Source

pub fn detached(&self) -> ObjectDetached

Create an owned instance of this object, copying our data in the process.

Source

pub fn detach(self) -> ObjectDetached

Sever the connection to the Repository and turn this instance into a standalone object.

Source

pub fn take_data(&mut self) -> Vec<u8>

Retrieve this instance’s data, leaving its own data empty.

This method works around the immovability of members of this type.

Trait Implementations§

Source§

impl<'repo> Clone for Blob<'repo>

Source§

fn clone(&self) -> Blob<'repo>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Drop for Blob<'_>

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

fn pin_drop(self: Pin<&mut Self>)

🔬This is a nightly-only experimental API. (pin_ergonomics)
Execute the destructor for this type, but different to Drop::drop, it requires self to be pinned. Read more
Source§

impl<'repo> From<Blob<'repo>> for ObjectDetached

Source§

fn from(v: Blob<'repo>) -> Self

Converts to this type from the input type.
Source§

impl<'repo> TryFrom<Object<'repo>> for Blob<'repo>

Source§

type Error = Object<'repo>

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'repo>) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl WriteTo for Blob<'_>

Note that the data written here might not correspond to the id of the Blob anymore if it was modified. Also, this is merely for convenience when writing empty blobs to the ODB. For writing any blob, use Repository::write_blob().

Source§

fn write_to(&self, out: &mut dyn Write) -> Result<()>

Write a representation of this instance to out.
Source§

fn kind(&self) -> Kind

Returns the type of this object.
Source§

fn size(&self) -> u64

Returns the size of this object’s representation (the amount of data which would be written by write_to). Read more
Source§

fn loose_header(&self) -> SmallVec<[u8; 28]>

Returns a loose object header based on the object’s data

Auto Trait Implementations§

§

impl<'repo> Freeze for Blob<'repo>

§

impl<'repo> !RefUnwindSafe for Blob<'repo>

§

impl<'repo> !Send for Blob<'repo>

§

impl<'repo> !Sync for Blob<'repo>

§

impl<'repo> Unpin for Blob<'repo>

§

impl<'repo> UnsafeUnpin for Blob<'repo>

§

impl<'repo> !UnwindSafe for Blob<'repo>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.