aboutsummaryrefslogtreecommitdiff
path: root/src/generator/mod.rs
diff options
context:
space:
mode:
authorRuben Beltran del Rio <git@r.bdr.sh>2025-01-05 15:48:16 +0100
committerRuben Beltran del Rio <git@r.bdr.sh>2025-01-05 15:48:16 +0100
commitb17907faf8d9693cef94a6048d802bd4ced9102f (patch)
tree1bd87c40e85af675a96b63672163b4caaa174364 /src/generator/mod.rs
parentd7fef30ac3f539975ef9edbba8e0af4a4e9ff3de (diff)
Deal with all lints
Diffstat (limited to 'src/generator/mod.rs')
-rw-r--r--src/generator/mod.rs18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/generator/mod.rs b/src/generator/mod.rs
index 293ad7d..dbe1c2e 100644
--- a/src/generator/mod.rs
+++ b/src/generator/mod.rs
@@ -4,18 +4,20 @@ mod static_files;
mod txt;
use crate::post::Post;
-use crate::template::TemplateContext;
+use crate::template::Context;
use std::io::Result;
-use std::path::PathBuf;
+use std::path::Path;
+
+type Generator = fn(&Path, &Path, &Path, &Context) -> Result<()>;
pub fn generate(
- static_directory: &PathBuf,
- template_directory: &PathBuf,
- output_directory: &PathBuf,
- posts: &Vec<Post>,
+ static_directory: &Path,
+ template_directory: &Path,
+ output_directory: &Path,
+ posts: &[Post],
) -> Result<()> {
let generators = available_generators();
- let context = Post::to_template_context(&posts);
+ let context = Post::to_template_context(posts);
for generator in generators {
generator(
static_directory,
@@ -27,7 +29,7 @@ pub fn generate(
Ok(())
}
-fn available_generators() -> Vec<fn(&PathBuf, &PathBuf, &PathBuf, &TemplateContext) -> Result<()>> {
+fn available_generators() -> Vec<Generator> {
vec![
static_files::generate,
// These three are actually the same. Can generalize, don't know how in rust yet.