pub struct Id<'r> { /* private fields */ }
Expand description
An ObjectId
with access to a repository.
Implementations§
source§impl<'repo> Id<'repo>
impl<'repo> Id<'repo>
An object id infused with a Repository
.
sourcepub fn header(&self) -> Result<Header, Error>
pub fn header(&self) -> Result<Header, Error>
Find the header
associated with this object id, or an error if it doesn’t exist.
Use this method if there is no interest in the contents of the object, which generally is much faster to obtain.
sourcepub fn try_header(&self) -> Result<Option<Header>, Error>
pub fn try_header(&self) -> Result<Option<Header>, Error>
Find the header
associated with this object id, or return None
if it doesn’t exist.
Use this method if there is no interest in the contents of the object, which generally is much faster to obtain.
sourcepub fn shorten(&self) -> Result<Prefix, Error>
pub fn shorten(&self) -> Result<Prefix, Error>
Turn this object id into a shortened id with a length in hex as configured by core.abbrev
.
sourcepub fn shorten_or_id(&self) -> Prefix
pub fn shorten_or_id(&self) -> Prefix
Turn this object id into a shortened id with a length in hex as configured by core.abbrev
, or default
to a prefix which equals our id in the unlikely error case.
Methods from Deref<Target = oid>§
sourcepub fn kind(&self) -> Kind
Available on crate feature excludes
only.
pub fn kind(&self) -> Kind
excludes
only.The kind of hash used for this instance.
sourcepub fn first_byte(&self) -> u8
Available on crate feature excludes
only.
pub fn first_byte(&self) -> u8
excludes
only.The first byte of the hash, commonly used to partition a set of object ids.
sourcepub fn as_bytes(&self) -> &[u8] ⓘ
Available on crate feature excludes
only.
pub fn as_bytes(&self) -> &[u8] ⓘ
excludes
only.Interpret this object id as raw byte slice.
sourcepub fn to_hex_with_len(&self, len: usize) -> HexDisplay<'_>
Available on crate feature excludes
only.
pub fn to_hex_with_len(&self, len: usize) -> HexDisplay<'_>
excludes
only.Return a type which can display itself in hexadecimal form with the len
amount of characters.
sourcepub fn to_hex(&self) -> HexDisplay<'_>
Available on crate feature excludes
only.
pub fn to_hex(&self) -> HexDisplay<'_>
excludes
only.Return a type which displays this oid as hex in full.
sourcepub fn is_null(&self) -> bool
Available on crate feature excludes
only.
pub fn is_null(&self) -> bool
excludes
only.Returns true
if this hash consists of all null bytes.
sourcepub fn hex_to_buf(&self, buf: &mut [u8]) -> usize
Available on crate feature excludes
only.
pub fn hex_to_buf(&self, buf: &mut [u8]) -> usize
excludes
only.Write ourselves to the out
in hexadecimal notation, returning the amount of written bytes.
Panics if the buffer isn’t big enough to hold twice as many bytes as the current binary size.
Trait Implementations§
source§impl<'repo> PartialEq<ObjectDetached> for Id<'repo>
impl<'repo> PartialEq<ObjectDetached> for Id<'repo>
source§impl<'a> PartialOrd for Id<'a>
impl<'a> PartialOrd for Id<'a>
impl<'r> Copy for Id<'r>
Auto Trait Implementations§
impl<'r> Freeze for Id<'r>
impl<'r> !RefUnwindSafe for Id<'r>
impl<'r> !Send for Id<'r>
impl<'r> !Sync for Id<'r>
impl<'r> Unpin for Id<'r>
impl<'r> !UnwindSafe for Id<'r>
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)