[][src]Struct git2::Object

pub struct Object<'repo> { /* fields omitted */ }

A structure to represent a git object

Methods

impl<'repo> Object<'repo>
[src]

pub fn id(&self) -> Oid
[src]

Get the id (SHA1) of a repository object

pub fn kind(&self) -> Option<ObjectType>
[src]

Get the object type of an object.

If the type is unknown, then None is returned.

pub fn peel(&self, kind: ObjectType) -> Result<Object<'repo>, Error>
[src]

Recursively peel an object until an object of the specified type is met.

If you pass Any as the target type, then the object will be peeled until the type changes (e.g. a tag will be chased until the referenced object is no longer a tag).

pub fn peel_to_blob(&self) -> Result<Blob<'repo>, Error>
[src]

Recursively peel an object until a blob is found

pub fn peel_to_commit(&self) -> Result<Commit<'repo>, Error>
[src]

Recursively peel an object until a commit is found

pub fn peel_to_tag(&self) -> Result<Tag<'repo>, Error>
[src]

Recursively peel an object until a tag is found

pub fn peel_to_tree(&self) -> Result<Tree<'repo>, Error>
[src]

Recursively peel an object until a tree is found

pub fn short_id(&self) -> Result<Buf, Error>
[src]

Get a short abbreviated OID string for the object

This starts at the "core.abbrev" length (default 7 characters) and iteratively extends to a longer string if that length is ambiguous. The result will be unambiguous (at least until new objects are added to the repository).

pub fn as_commit(&self) -> Option<&Commit<'repo>>
[src]

Attempt to view this object as a commit.

Returns None if the object is not actually a commit.

pub fn into_commit(self) -> Result<Commit<'repo>, Object<'repo>>
[src]

Attempt to consume this object and return a commit.

Returns Err(self) if this object is not actually a commit.

pub fn as_tag(&self) -> Option<&Tag<'repo>>
[src]

Attempt to view this object as a tag.

Returns None if the object is not actually a tag.

pub fn into_tag(self) -> Result<Tag<'repo>, Object<'repo>>
[src]

Attempt to consume this object and return a tag.

Returns Err(self) if this object is not actually a tag.

pub fn as_tree(&self) -> Option<&Tree<'repo>>
[src]

Attempt to view this object as a tree.

Returns None if the object is not actually a tree.

pub fn into_tree(self) -> Result<Tree<'repo>, Object<'repo>>
[src]

Attempt to consume this object and return a tree.

Returns Err(self) if this object is not actually a tree.

pub fn as_blob(&self) -> Option<&Blob<'repo>>
[src]

Attempt to view this object as a blob.

Returns None if the object is not actually a blob.

pub fn into_blob(self) -> Result<Blob<'repo>, Object<'repo>>
[src]

Attempt to consume this object and return a blob.

Returns Err(self) if this object is not actually a blob.

pub fn describe(&self, opts: &DescribeOptions) -> Result<Describe, Error>
[src]

Describes a commit

Performs a describe operation on this commitish object.

Trait Implementations

impl<'repo> Drop for Object<'repo>
[src]

impl<'repo> Clone for Object<'repo>
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl<'repo> Debug for Object<'repo>
[src]

Auto Trait Implementations

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

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

Blanket Implementations

impl<T> From for T
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]