pub struct PostEntry {
pub title: String,
pub url: String,
pub date: String,
pub description: String,
pub tags: Vec<String>,
pub locale: String,
pub word_count: u64,
pub author: Option<String>,
pub topic_clusters: Vec<String>,
}Expand description
One public content page, normalised from its .meta.json sidecar.
§Examples
use ssg::agent_api::PostEntry;
let p = PostEntry {
title: "Hello".into(),
url: "https://example.com/hello.html".into(),
date: "2026-01-01".into(),
description: "Greeting".into(),
tags: vec!["rust".into()],
locale: "en".into(),
word_count: 42,
author: None,
topic_clusters: Vec::new(),
};
assert_eq!(p.word_count, 42);Fields§
§title: StringPage title (sidecar title — pages without one are skipped).
url: StringAbsolute URL (base URL + /{rel}.html).
date: StringPublication date string, verbatim from frontmatter (may be empty).
description: StringMeta description / excerpt / subtitle (may be empty).
Sorted, deduplicated tag terms.
locale: StringBCP-47-ish locale (locale → language → site language → en).
word_count: u64Resolved word count (see module docs for the fallback chain).
Raw author string, used only to derive person.json.
topic_clusters: Vec<String>Sorted topic_clusters terms (merged into topics.json).
Trait Implementations§
impl Eq for PostEntry
impl StructuralPartialEq for PostEntry
Auto Trait Implementations§
impl Freeze for PostEntry
impl RefUnwindSafe for PostEntry
impl Send for PostEntry
impl Sync for PostEntry
impl Unpin for PostEntry
impl UnsafeUnpin for PostEntry
impl UnwindSafe for PostEntry
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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