Enum git_object::ObjectRef
source · [−]pub enum ObjectRef<'a> {
Tree(TreeRef<'a>),
Blob(BlobRef<'a>),
Commit(CommitRef<'a>),
Tag(TagRef<'a>),
}
Expand description
Immutable objects are read-only structures referencing most data from a byte slice.
Immutable objects are expected to be deserialized from bytes that acts as backing store, and they
cannot be mutated or serialized. Instead, one will convert them into their mutable
counterparts
which support mutation and serialization.
An ObjectRef
is representing Trees
, Blobs
, Commits
, or Tags
.
Variants
Tree(TreeRef<'a>)
Blob(BlobRef<'a>)
Commit(CommitRef<'a>)
Tag(TagRef<'a>)
Implementations
sourceimpl<'a> ObjectRef<'a>
impl<'a> ObjectRef<'a>
sourcepub fn from_loose(data: &'a [u8]) -> Result<ObjectRef<'a>, LooseDecodeError>
pub fn from_loose(data: &'a [u8]) -> Result<ObjectRef<'a>, LooseDecodeError>
Deserialize an object from a loose serialisation
sourcepub fn from_bytes(kind: Kind, data: &'a [u8]) -> Result<ObjectRef<'a>, Error>
pub fn from_bytes(kind: Kind, data: &'a [u8]) -> Result<ObjectRef<'a>, Error>
Deserialize an object of kind
from the given data
.
sourcepub fn into_owned(self) -> Object
pub fn into_owned(self) -> Object
Convert the immutable object into a mutable version, consuming the source in the process.
Note that this is an expensive operation.
Trait Implementations
sourceimpl<'de: 'a, 'a> Deserialize<'de> for ObjectRef<'a>
impl<'de: 'a, 'a> Deserialize<'de> for ObjectRef<'a>
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl<'a> Ord for ObjectRef<'a>
impl<'a> Ord for ObjectRef<'a>
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl<'a> PartialOrd<ObjectRef<'a>> for ObjectRef<'a>
impl<'a> PartialOrd<ObjectRef<'a>> for ObjectRef<'a>
sourcefn partial_cmp(&self, other: &ObjectRef<'a>) -> Option<Ordering>
fn partial_cmp(&self, other: &ObjectRef<'a>) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl<'a> WriteTo for ObjectRef<'a>
impl<'a> WriteTo for ObjectRef<'a>
Serialization
impl<'a> Eq for ObjectRef<'a>
impl<'a> StructuralEq for ObjectRef<'a>
impl<'a> StructuralPartialEq for ObjectRef<'a>
Auto Trait Implementations
impl<'a> RefUnwindSafe for ObjectRef<'a>
impl<'a> Send for ObjectRef<'a>
impl<'a> Sync for ObjectRef<'a>
impl<'a> Unpin for ObjectRef<'a>
impl<'a> UnwindSafe for ObjectRef<'a>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more