usecrate::search::TermFrequenciesIndex;usestd::borrow::Cow;usestd::io::{self, Write};/// Defines a Renderable component
////// Renderables can be consumed by the `Renderer` and used to write
/// HTML out to disk. This abstracts over standard `Page` instances
/// and the index page.
pubtraitRenderable{/// Get the slug of the page
////// This should be suitable for use in a URI.
fnget_slug(&self)-> String;/// Get the tilte of the page, so that rendering can place it in
/// the <head>
fnget_title(&self)->Cow<'_, str>;/// Write the heading to the output file.
fnwrite_header<T: Write>(&self, f:&mut T, title:&str)->io::Result<()>;/// Write the body to the output file.
fnwrite_body<T: Write>(&self, _: &mut T)->io::Result<()>;/// Path from this renderbabel to the Root
fnpath_to_root(&self)->Cow<'_, str>;// Get the search index for this renderable, if any.
fnget_search_index(&self)->Option<TermFrequenciesIndex>;}