]> git.r.bdr.sh - rbdr/page/blobdiff - src/file_handler/mod.rs
Use gema_texto for gemini parsing
[rbdr/page] / src / file_handler / mod.rs
index 522bcbf25c456db50ab767f864e4bbc929fe94f0..e8a446b452f2d57b15e0661ed90a2de63a1a6e18 100644 (file)
@@ -8,7 +8,7 @@ use std::fs::read_to_string;
 use std::path::{Path, PathBuf};
 
 pub struct FileHandler {
-    pub strategies: Vec<Box<dyn FileHandlerStrategy>>,
+    pub strategies: Vec<Box<dyn Strategy>>,
     pub layout: Option<String>,
 }
 
@@ -27,7 +27,7 @@ impl Default for FileHandler {
 
 impl FileHandler {
     pub fn identify(&self, path: &Path) -> FileType {
-        for strategy in self.strategies.iter() {
+        for strategy in &self.strategies {
             if strategy.is(path) {
                 return strategy.identify();
             }
@@ -53,9 +53,9 @@ impl FileHandler {
         gemini_destination: &Path,
         files: &[File],
     ) {
-        files.iter().for_each(|file| {
+        for file in files {
             self.handle(source, html_destination, gemini_destination, file);
-        });
+        }
     }
 
     pub fn handle(
@@ -80,7 +80,7 @@ impl FileHandler {
     }
 }
 
-pub trait FileHandlerStrategy {
+pub trait Strategy {
     fn is(&self, path: &Path) -> bool;
     fn identify(&self) -> FileType;
     fn can_handle(&self, file_type: &FileType) -> bool;
@@ -182,7 +182,7 @@ mod tests {
         file_type: FileType,
     }
 
-    impl FileHandlerStrategy for MockStrategy {
+    impl Strategy for MockStrategy {
         fn is(&self, _path: &Path) -> bool {
             self.is_match
         }