]> git.r.bdr.sh - rbdr/page/blob - src/file_handler/file_strategies/layout.rs
21ce9ba66aa4f520cfc6c2fd804bf6ef66c5fc40
[rbdr/page] / src / file_handler / file_strategies / layout.rs
1 pub struct Strategy {}
2
3 use std::path::PathBuf;
4
5 use crate::file_handler::{File, FileType, FileHandlerStrategy};
6
7 impl FileHandlerStrategy for Strategy {
8 fn is(&self, path: &PathBuf) -> bool {
9 return !path.is_dir() && path.ends_with("_layout.html");
10 }
11
12 fn identify(&self) -> FileType {
13 FileType::Layout
14 }
15
16 fn can_handle(&self, file_type: &FileType) -> bool {
17 match file_type {
18 FileType::Layout => true,
19 _ => false,
20 }
21 }
22
23 // We don't implement handling for layout, as we assume there's only one
24 // and it got handled before.
25 fn handle(&self, _s: &PathBuf, _d: &PathBuf, _f: &File) {}
26 }