pub struct CommitMetadata {Show 13 fields
pub hash: String,
pub message: String,
pub stack_entry_id: Uuid,
pub stack_id: Uuid,
pub branch: String,
pub source_branch: String,
pub dependencies: Vec<String>,
pub dependents: Vec<String>,
pub is_pushed: bool,
pub is_submitted: bool,
pub pull_request_id: Option<String>,
pub created_at: DateTime<Utc>,
pub updated_at: DateTime<Utc>,
}
Expand description
Metadata associated with a commit in the stack
Fields§
§hash: String
The commit hash
message: String
Original commit message
stack_entry_id: Uuid
Stack entry ID this commit belongs to
stack_id: Uuid
Stack ID this commit belongs to
branch: String
Branch name where this commit lives
source_branch: String
Original local branch where this commit was made
dependencies: Vec<String>
Dependent commit hashes (commits this one depends on)
dependents: Vec<String>
Commits that depend on this one
is_pushed: bool
Whether this commit has been pushed to remote
is_submitted: bool
Whether this commit is part of a submitted PR
pull_request_id: Option<String>
Pull request ID if submitted
created_at: DateTime<Utc>
When this metadata was created
updated_at: DateTime<Utc>
When this metadata was last updated
Implementations§
Source§impl CommitMetadata
impl CommitMetadata
Sourcepub fn new(
hash: String,
message: String,
stack_entry_id: Uuid,
stack_id: Uuid,
branch: String,
source_branch: String,
) -> Self
pub fn new( hash: String, message: String, stack_entry_id: Uuid, stack_id: Uuid, branch: String, source_branch: String, ) -> Self
Create new commit metadata
Sourcepub fn add_dependency(&mut self, commit_hash: String)
pub fn add_dependency(&mut self, commit_hash: String)
Add a dependency (commit this one depends on)
Sourcepub fn add_dependent(&mut self, commit_hash: String)
pub fn add_dependent(&mut self, commit_hash: String)
Add a dependent (commit that depends on this one)
Sourcepub fn mark_pushed(&mut self)
pub fn mark_pushed(&mut self)
Mark as pushed to remote
Sourcepub fn mark_submitted(&mut self, pull_request_id: String)
pub fn mark_submitted(&mut self, pull_request_id: String)
Mark as submitted for review
Sourcepub fn short_hash(&self) -> String
pub fn short_hash(&self) -> String
Get a short version of the commit hash
Trait Implementations§
Source§impl Clone for CommitMetadata
impl Clone for CommitMetadata
Source§fn clone(&self) -> CommitMetadata
fn clone(&self) -> CommitMetadata
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for CommitMetadata
impl Debug for CommitMetadata
Source§impl<'de> Deserialize<'de> for CommitMetadata
impl<'de> Deserialize<'de> for CommitMetadata
Source§fn 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
Auto Trait Implementations§
impl Freeze for CommitMetadata
impl RefUnwindSafe for CommitMetadata
impl Send for CommitMetadata
impl Sync for CommitMetadata
impl Unpin for CommitMetadata
impl UnwindSafe for CommitMetadata
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more