diff options
Diffstat (limited to 'src/directive/map.rs')
-rw-r--r-- | src/directive/map.rs | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/directive/map.rs b/src/directive/map.rs index 960b339..009bf64 100644 --- a/src/directive/map.rs +++ b/src/directive/map.rs @@ -1,3 +1,4 @@ +use crate::directive::DirectiveImplementation; use crate::error::SiteError; use crate::page::PageMeta; use crate::site::Site; @@ -6,18 +7,16 @@ use crate::wikitext::ParsedDirective; #[derive(Debug, Default, Eq, PartialEq)] pub struct Map {} -impl Map { - pub const REQUIRED: &'static [&'static str] = &["pages"]; - pub const ALLOWED: &'static [&'static str] = &["show"]; - pub const ALLOW_ANY_UNNAMED: bool = true; +impl DirectiveImplementation for Map { + const REQUIRED: &'static [&'static str] = &["pages"]; + const ALLOWED: &'static [&'static str] = &["show"]; + const ALLOW_ANY_UNNAMED: bool = true; - pub fn process(&self, _site: &Site, _meta: &mut PageMeta) -> Result<String, SiteError> { - Err(SiteError::UnimplementedDirective("map".into())) + fn from_parsed(_: &ParsedDirective) -> Self { + Self::default() } -} -impl From<&ParsedDirective> for Map { - fn from(_: &ParsedDirective) -> Self { - Map::default() + fn process(&self, _site: &Site, _meta: &mut PageMeta) -> Result<String, SiteError> { + Err(SiteError::UnimplementedDirective("map".into())) } } |