Struct MediumBlog

Source
pub struct MediumBlog {
    pub hash: HashMap<String, MediumBlogEntry>,
    pub entries: Vec<MediumBlogEntry>,
    pub tags: Vec<String>,
    pub sitemap: String,
}
Expand description

The main MediumBlog which stores all relevant information for the blog

hash contains a map from the url slug, which is constructed from the “slug” field in the BlogJson and the date, to the BlogEntry

entries contains a date-sorted (newest first) Vec of BlogEntry. Note that entries and hash contain the same information but in different formats for performance reasons

tags is an unsorted Vec of all unique tags used in the blog

Fields§

§hash: HashMap<String, MediumBlogEntry>

URL slug to individual blog

Useful when you have a GET request to /blog/<date>/<slug>

§entries: Vec<MediumBlogEntry>

Vec of blog posts, sorted by date

Useful when you want to list all blog posts e.g. on an index page

§tags: Vec<String>

Vec of all unique tags

Useful when you want to list all tags e.g. on an index page

§sitemap: String

String representation of the sitemap

Trait Implementations§

Source§

impl<'de> Deserialize<'de> for MediumBlog

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for MediumBlog

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,