summaryrefslogtreecommitdiff
path: root/src/directive/map.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/directive/map.rs')
-rw-r--r--src/directive/map.rs19
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()))
}
}