Struct gix::Tag

source ·
pub struct Tag<'repo> {
    pub id: ObjectId,
    pub data: Vec<u8>,
    /* private fields */
}
Expand description

A decoded tag object with access to its owning repository.

Fields§

§id: ObjectId

The id of the tree

§data: Vec<u8>

The fully decoded tag data

Implementations§

source§

impl<'repo> Tag<'repo>

source

pub fn decode(&self) -> Result<TagRef<'_>, Error>

Decode the entire tag object and return it for accessing all tag information.

This never allocates.

Note that the returned commit object does make lookup easy and should be used for successive calls to string-ish information to avoid decoding the object more than once.

source

pub fn target_id(&self) -> Result<Id<'repo>, Error>

Decode this tag partially and return the id of its target.

source

pub fn tagger(&self) -> Result<Option<SignatureRef<'_>>, Error>

Decode this tag partially and return the tagger, if the field exists.

source§

impl Tag<'_>

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 encoded data, leaving its own data empty.

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

Trait Implementations§

source§

impl<'repo> Clone for Tag<'repo>

source§

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

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl<'a> Drop for Tag<'a>

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

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

source§

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

Converts to this type from the input type.
source§

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

§

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.

Auto Trait Implementations§

§

impl<'repo> Freeze for Tag<'repo>

§

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

§

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

§

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

§

impl<'repo> Unpin for Tag<'repo>

§

impl<'repo> !UnwindSafe for Tag<'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> 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> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

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

§

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>,

§

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>,

§

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.