pub struct Entry {
pub guid: String,
pub title: String,
pub published: Option<String>,
pub url: Option<String>,
pub summary: Option<String>,
}Expand description
One document, mapped onto the shape the feed pipeline already stores.
Fields§
§guid: StringThe document’s own at:// URI.
Not derived from path. path is mutable — a publisher who moves an
article would duplicate their whole archive on the next poll, because
dedup is UNIQUE (feed_id, guid).
title: String§published: Option<String>When the document was published, re-spelled by crate::feed::fmt_time
into the store’s one RFC3339 shape. The reading order sorts on this
column as a string, so a publisher’s spelling cannot go in verbatim.
Taken from publishedAt when it parses AND is not in the future,
otherwise from the TID in the record key, otherwise None. See
entries_from_records for why a future date is discarded rather than
clamped, and why an undated entry is left undated.
url: Option<String>The joined, scheme-vetted permalink — None when the document’s
path does not resolve to a safe href on the publication’s origin.
Option because the guarantee cannot be met unconditionally and the
store’s column is optional too; a title-only entry is not a failure.
summary: Option<String>description, else textContent, escaped by
crate::feed::plain_text_to_html — both are plain text in the
lexicon, and the column they land in is rendered as HTML.
Trait Implementations§
impl Eq for Entry
impl StructuralPartialEq for Entry
Auto Trait Implementations§
impl Freeze for Entry
impl RefUnwindSafe for Entry
impl Send for Entry
impl Sync for Entry
impl Unpin for Entry
impl UnsafeUnpin for Entry
impl UnwindSafe for Entry
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> ⓘ
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