pub struct QueueEntry<'a> {
pub issue: &'a Issue,
pub entered_at: EntryTime<'a>,
pub age_days: Option<i64>,
}Expand description
One row of the derived inbox (data-model §5).
Borrows the issue rather than copying it: the snapshot the caller already
loaded is the source of truth (C-001), and a queue of 10,000 entries that
cloned its issues would hold a second, silently divergent copy of every title
and body. A consumer that wants more than these fields reads issue.
last_decision from data-model §5 is not here, and the reason is a
boundary rather than an omission: the triage History kinds that would answer
it are introduced by WP03 T016, and today’s vocabulary has none. Deriving it
from the last event of any kind would report a relationship_added as the
queue’s most recent decision.
Fields§
§issue: &'a IssueThe canonical issue this row describes.
entered_at: EntryTime<'a>The stamp queue age is derived from, verbatim from WP01’s
crate::triage::entry_time — Unknown for a legacy issue, never
substituted with created or updated.
age_days: Option<i64>Days between Self::entered_at and the supplied today; None when
the entry has no stamp or a stamp this parser cannot read.
None, never 0: a missing stamp and “entered today” are different
facts, and a zero that means “unknown” is how an unknown age becomes a
confident one.
Trait Implementations§
Source§impl<'a> Clone for QueueEntry<'a>
impl<'a> Clone for QueueEntry<'a>
Source§impl<'a> Debug for QueueEntry<'a>
impl<'a> Debug for QueueEntry<'a>
impl<'a> Eq for QueueEntry<'a>
Source§impl<'a> PartialEq for QueueEntry<'a>
impl<'a> PartialEq for QueueEntry<'a>
impl<'a> StructuralPartialEq for QueueEntry<'a>
Auto Trait Implementations§
impl<'a> Freeze for QueueEntry<'a>
impl<'a> RefUnwindSafe for QueueEntry<'a>
impl<'a> Send for QueueEntry<'a>
impl<'a> Sync for QueueEntry<'a>
impl<'a> Unpin for QueueEntry<'a>
impl<'a> UnsafeUnpin for QueueEntry<'a>
impl<'a> UnwindSafe for QueueEntry<'a>
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> 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