Skip to main content

TagRef

Struct TagRef 

Source
pub struct TagRef<'a> {
    pub object: ObjectId,
    pub object_type: ObjectType,
    pub name: &'a [u8],
    pub tagger: Option<&'a [u8]>,
    pub message: &'a [u8],
    pub raw_body: Option<&'a [u8]>,
}
Expand description

A borrowed parse-view of a raw annotated tag object.

The tag name, tagger identity, and message slices point into the original tag body. The object id and object type are parsed into owned values while preserving the same validation behavior as Tag::parse. Like Tag, this is a parsed canonical view of known fields rather than a byte-lossless view of every raw header.

Fields§

§object: ObjectId§object_type: ObjectType§name: &'a [u8]§tagger: Option<&'a [u8]>§message: &'a [u8]§raw_body: Option<&'a [u8]>

Implementations§

Source§

impl<'a> TagRef<'a>

Source

pub fn parse(format: ObjectFormat, bytes: &'a [u8]) -> Result<Self>

Source

pub fn to_owned(&self) -> Tag

Source

pub fn tagger_signature(&self) -> Option<Signature>

Parse the raw tagger line into a typed Signature parse-view.

Returns None when the tag has no tagger header or when the stored bytes are not a well-formed git identity — callers that need to tell those apart should inspect Tag::tagger directly. This is a read-only lens over the raw bytes, which stay the source of truth for Tag::write; the returned signature re-serializes byte-identically to the stored tagger line.

Trait Implementations§

Source§

impl<'a> Clone for TagRef<'a>

Source§

fn clone(&self) -> TagRef<'a>

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<'a> Debug for TagRef<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'a> Eq for TagRef<'a>

Source§

impl<'a> From<TagRef<'a>> for Tag

Source§

fn from(tag: TagRef<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> PartialEq for TagRef<'a>

Source§

fn eq(&self, other: &TagRef<'a>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<'a> StructuralPartialEq for TagRef<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for TagRef<'a>

§

impl<'a> RefUnwindSafe for TagRef<'a>

§

impl<'a> Send for TagRef<'a>

§

impl<'a> Sync for TagRef<'a>

§

impl<'a> Unpin for TagRef<'a>

§

impl<'a> UnsafeUnpin for TagRef<'a>

§

impl<'a> UnwindSafe for TagRef<'a>

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