pub struct LastPushedRecord {
pub tip: String,
pub outcome: LastPushedOutcome,
pub owner_token: String,
pub owner_pid: i64,
pub exit_code: i64,
pub output: String,
pub published_tip: Option<String>,
}Expand description
What:
The most recent push attempt for one branch.
Why:
owner_token tells a waiting commit whether a push finished after it first read the record;
output is the complete text of a failed push, which every joined commit surfaces.
In TS you’d write (pseudocode):
type LastPushedRecord = { schemaVersion: 1; tip; outcome; ownerToken; ownerPid; exitCode; output; publishedTip?: string };Fields§
§tip: StringBranch tip the attempt resolved before pushing; never empty.
outcome: LastPushedOutcomeWhether the push succeeded.
owner_token: StringOwner-lock token of the attempt; never empty.
owner_pid: i64Process that ran the attempt.
exit_code: i64Push exit code, 0 on success.
output: StringComplete push output of a failed attempt; empty on success.
published_tip: Option<String>The newest tip of the branch known to be on the remote, kept by a failed attempt so that a failure does not
erase what the branch is known to have published; absent from a record of a successful push, whose tip is it.
Implementations§
Source§impl LastPushedRecord
impl LastPushedRecord
Sourcepub fn published(&self) -> Option<&str>
pub fn published(&self) -> Option<&str>
What:
The newest tip of the branch this record shows on the remote, if it shows one.
Why:
A successful push published its tip; a failed one published nothing, so it can only repeat what the record
before it showed.
In TS you’d write (pseudocode):
const published = (record) => (record.outcome === 'pushed' ? record.tip : record.publishedTip);Trait Implementations§
Source§impl Clone for LastPushedRecord
impl Clone for LastPushedRecord
Source§impl Debug for LastPushedRecord
impl Debug for LastPushedRecord
impl Eq for LastPushedRecord
Source§impl PartialEq for LastPushedRecord
impl PartialEq for LastPushedRecord
impl StructuralPartialEq for LastPushedRecord
Auto Trait Implementations§
impl Freeze for LastPushedRecord
impl RefUnwindSafe for LastPushedRecord
impl Send for LastPushedRecord
impl Sync for LastPushedRecord
impl Unpin for LastPushedRecord
impl UnsafeUnpin for LastPushedRecord
impl UnwindSafe for LastPushedRecord
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§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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> ⓘ
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> ⓘ
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