nib 0.0.10

A yet another static site generator
Documentation
mod author;
mod entry;
mod heading;

use std::fmt;
use std::hash::Hash;

use serde_json::Value;

pub use author::Author;
pub use entry::{EntryKey, Entry, KEY_PREFIX, KEY_SUFFIX};
pub use heading::Heading;

use serde::Serialize;

pub trait Metadata<T>
where
    T: Serialize + fmt::Display + Hash,
{
    fn new() -> Self;
    fn add(&mut self, key: T, value: String) -> Option<String>;
    fn get(&self, key: T) -> Option<String>;
    fn has(&self, key: T) -> bool;
    fn to_json(&self) -> Value;
}