From d208687a7c62dfbec0e4941d47db2f897c47a933 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Wed, 9 Nov 2022 13:16:14 +0200 Subject: add trait for directive implementations Sponsored-by: author --- src/directive/mod.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/directive/mod.rs b/src/directive/mod.rs index 5bc8ef6..899980d 100644 --- a/src/directive/mod.rs +++ b/src/directive/mod.rs @@ -10,6 +10,14 @@ pub enum Processed { Markdown(String), } +trait DirectiveImplementation { + const REQUIRED: &'static [&'static str]; + const ALLOWED: &'static [&'static str]; + const ALLOW_ANY_UNNAMED: bool; + fn from_parsed(p: &ParsedDirective) -> Self; + fn process(&self, site: &Site, meta: &mut PageMeta) -> Result; +} + #[derive(Debug, Eq, PartialEq)] pub enum Directive { Simple, -- cgit v1.2.1