Enum branchless::core::eventlog::Event
source · pub enum Event {
RewriteEvent {
timestamp: f64,
event_tx_id: EventTransactionId,
old_commit_oid: MaybeZeroOid,
new_commit_oid: MaybeZeroOid,
},
RefUpdateEvent {
timestamp: f64,
event_tx_id: EventTransactionId,
ref_name: ReferenceName,
old_oid: MaybeZeroOid,
new_oid: MaybeZeroOid,
message: Option<ReferenceName>,
},
CommitEvent {
timestamp: f64,
event_tx_id: EventTransactionId,
commit_oid: NonZeroOid,
},
ObsoleteEvent {
timestamp: f64,
event_tx_id: EventTransactionId,
commit_oid: NonZeroOid,
},
UnobsoleteEvent {
timestamp: f64,
event_tx_id: EventTransactionId,
commit_oid: NonZeroOid,
},
WorkingCopySnapshot {
timestamp: f64,
event_tx_id: EventTransactionId,
head_oid: MaybeZeroOid,
commit_oid: NonZeroOid,
ref_name: Option<ReferenceName>,
},
}
Expand description
An event that occurred to one of the commits in the repository.
Variants§
RewriteEvent
Fields
event_tx_id: EventTransactionId
The transaction ID of the event.
old_commit_oid: MaybeZeroOid
The OID of the commit before the rewrite.
new_commit_oid: MaybeZeroOid
The OID of the commit after the rewrite.
Indicates that the commit was rewritten.
Examples of rewriting include rebases and amended commits.
We typically want to mark the new version of the commit as active and the old version of the commit as obsolete.
RefUpdateEvent
Fields
event_tx_id: EventTransactionId
The transaction ID of the event.
ref_name: ReferenceName
The full name of the reference that was updated.
For example, HEAD
or refs/heads/master
.
old_oid: MaybeZeroOid
The old referent OID.
new_oid: MaybeZeroOid
The updated referent OID.
message: Option<ReferenceName>
A message associated with the rewrite, if any.
Indicates that a reference was updated.
The most important reference we track is HEAD. In principle, we can also
track branch moves in this way, but Git doesn’t support the appropriate
hook until v2.29 (reference-transaction
).
CommitEvent
Fields
event_tx_id: EventTransactionId
The transaction ID of the event.
commit_oid: NonZeroOid
The new commit OID.
Indicate that the user made a commit.
User commits should be marked as active.
ObsoleteEvent
Fields
event_tx_id: EventTransactionId
The transaction ID of the event.
commit_oid: NonZeroOid
The OID of the commit that was obsoleted.
Indicates that a commit was explicitly obsoleted by the user.
If the commit in question was not already active, then this has no practical effect.
UnobsoleteEvent
Fields
event_tx_id: EventTransactionId
The transaction ID of the event.
commit_oid: NonZeroOid
The OID of the commit that was unobsoleted.
Indicates that a commit was explicitly un-obsoleted by the user.
If the commit in question was not already obsolete, then this has no practical effect.
WorkingCopySnapshot
Fields
event_tx_id: EventTransactionId
The transaction ID of the event.
head_oid: MaybeZeroOid
The OID of the current HEAD commit.
commit_oid: NonZeroOid
The OID of the commit containing metadata about the working copy snapshot.
ref_name: Option<ReferenceName>
The name of the checked-out branch, if any. This should be a full
reference name like refs/heads/foo
.
Represents a snapshot of the working copy made at a certain time, typically before a potentially-destructive operation.
Implementations§
source§impl Event
impl Event
sourcepub fn get_timestamp(&self) -> SystemTime
pub fn get_timestamp(&self) -> SystemTime
Get the timestamp associated with this event.
sourcepub fn get_event_tx_id(&self) -> EventTransactionId
pub fn get_event_tx_id(&self) -> EventTransactionId
Get the event transaction ID associated with this event.
Trait Implementations§
source§impl PartialEq<Event> for Event
impl PartialEq<Event> for Event
impl StructuralPartialEq for Event
Auto Trait Implementations§
impl RefUnwindSafe for Event
impl Send for Event
impl Sync for Event
impl Unpin for Event
impl UnwindSafe for Event
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>
fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.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>
§impl<D> OwoColorize for D
impl<D> OwoColorize for D
§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where C: Color,
§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where C: Color,
§fn on_yellow<'a>(&'a self) -> BgColorDisplay<'a, Yellow, Self>
fn on_yellow<'a>(&'a self) -> BgColorDisplay<'a, Yellow, Self>
§fn magenta<'a>(&'a self) -> FgColorDisplay<'a, Magenta, Self>
fn magenta<'a>(&'a self) -> FgColorDisplay<'a, Magenta, Self>
§fn on_magenta<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
fn on_magenta<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
§fn on_purple<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
fn on_purple<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
§fn default_color<'a>(&'a self) -> FgColorDisplay<'a, Default, Self>
fn default_color<'a>(&'a self) -> FgColorDisplay<'a, Default, Self>
§fn on_default_color<'a>(&'a self) -> BgColorDisplay<'a, Default, Self>
fn on_default_color<'a>(&'a self) -> BgColorDisplay<'a, Default, Self>
§fn bright_black<'a>(&'a self) -> FgColorDisplay<'a, BrightBlack, Self>
fn bright_black<'a>(&'a self) -> FgColorDisplay<'a, BrightBlack, Self>
§fn on_bright_black<'a>(&'a self) -> BgColorDisplay<'a, BrightBlack, Self>
fn on_bright_black<'a>(&'a self) -> BgColorDisplay<'a, BrightBlack, Self>
§fn bright_red<'a>(&'a self) -> FgColorDisplay<'a, BrightRed, Self>
fn bright_red<'a>(&'a self) -> FgColorDisplay<'a, BrightRed, Self>
§fn on_bright_red<'a>(&'a self) -> BgColorDisplay<'a, BrightRed, Self>
fn on_bright_red<'a>(&'a self) -> BgColorDisplay<'a, BrightRed, Self>
§fn bright_green<'a>(&'a self) -> FgColorDisplay<'a, BrightGreen, Self>
fn bright_green<'a>(&'a self) -> FgColorDisplay<'a, BrightGreen, Self>
§fn on_bright_green<'a>(&'a self) -> BgColorDisplay<'a, BrightGreen, Self>
fn on_bright_green<'a>(&'a self) -> BgColorDisplay<'a, BrightGreen, Self>
§fn bright_yellow<'a>(&'a self) -> FgColorDisplay<'a, BrightYellow, Self>
fn bright_yellow<'a>(&'a self) -> FgColorDisplay<'a, BrightYellow, Self>
§fn on_bright_yellow<'a>(&'a self) -> BgColorDisplay<'a, BrightYellow, Self>
fn on_bright_yellow<'a>(&'a self) -> BgColorDisplay<'a, BrightYellow, Self>
§fn bright_blue<'a>(&'a self) -> FgColorDisplay<'a, BrightBlue, Self>
fn bright_blue<'a>(&'a self) -> FgColorDisplay<'a, BrightBlue, Self>
§fn on_bright_blue<'a>(&'a self) -> BgColorDisplay<'a, BrightBlue, Self>
fn on_bright_blue<'a>(&'a self) -> BgColorDisplay<'a, BrightBlue, Self>
§fn bright_magenta<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
fn bright_magenta<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
§fn on_bright_magenta<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
fn on_bright_magenta<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
§fn bright_purple<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
fn bright_purple<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
§fn on_bright_purple<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
fn on_bright_purple<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
§fn bright_cyan<'a>(&'a self) -> FgColorDisplay<'a, BrightCyan, Self>
fn bright_cyan<'a>(&'a self) -> FgColorDisplay<'a, BrightCyan, Self>
§fn on_bright_cyan<'a>(&'a self) -> BgColorDisplay<'a, BrightCyan, Self>
fn on_bright_cyan<'a>(&'a self) -> BgColorDisplay<'a, BrightCyan, Self>
§fn bright_white<'a>(&'a self) -> FgColorDisplay<'a, BrightWhite, Self>
fn bright_white<'a>(&'a self) -> FgColorDisplay<'a, BrightWhite, Self>
§fn on_bright_white<'a>(&'a self) -> BgColorDisplay<'a, BrightWhite, Self>
fn on_bright_white<'a>(&'a self) -> BgColorDisplay<'a, BrightWhite, Self>
§fn blink_fast<'a>(&'a self) -> BlinkFastDisplay<'a, Self>
fn blink_fast<'a>(&'a self) -> BlinkFastDisplay<'a, Self>
§fn strikethrough<'a>(&'a self) -> StrikeThroughDisplay<'a, Self>
fn strikethrough<'a>(&'a self) -> StrikeThroughDisplay<'a, Self>
§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where Color: DynColor,
OwoColorize::fg
or
a color-specific method, such as OwoColorize::green
, Read more§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where Color: DynColor,
OwoColorize::bg
or
a color-specific method, such as OwoColorize::on_yellow
, Read more