pub struct IndexEntry {
pub path: String,
pub status: EntryStatus,
pub object_hash: Hash,
pub mtime_ns: u64,
pub size: u64,
pub ino: u64,
pub ctime_ns: u64,
}Expand description
One staged entry.
Fields§
§path: StringRepo-relative path with / separators.
status: EntryStatusStatus byte.
object_hash: HashObject hash; [0;32] for removed entries.
mtime_ns: u64Stat cache: worktree mtime (nanoseconds since the Unix epoch,
saturating) observed when object_hash was computed. 0 =
no cache — the file must be re-read and re-hashed to compare.
size: u64Stat cache: file size in bytes observed when object_hash was
computed. Only meaningful when mtime_ns != 0.
ino: u64Stat cache: inode number (0 on platforms without one, or when uncached). Catches replace-by-rename swaps that preserve mtime+size — the replacement file has a different inode.
ctime_ns: u64Stat cache: status-change time (ctime) in saturating ns. ctime
cannot be set from userspace, so it catches touch -r-style
timestamp restoration after an edit. 0 = don’t check.
Trait Implementations§
Source§impl Clone for IndexEntry
impl Clone for IndexEntry
Source§fn clone(&self) -> IndexEntry
fn clone(&self) -> IndexEntry
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 IndexEntry
impl Debug for IndexEntry
impl Eq for IndexEntry
Source§impl PartialEq for IndexEntry
impl PartialEq for IndexEntry
Source§fn eq(&self, other: &IndexEntry) -> bool
fn eq(&self, other: &IndexEntry) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for IndexEntry
Auto Trait Implementations§
impl Freeze for IndexEntry
impl RefUnwindSafe for IndexEntry
impl Send for IndexEntry
impl Sync for IndexEntry
impl Unpin for IndexEntry
impl UnsafeUnpin for IndexEntry
impl UnwindSafe for IndexEntry
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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