pub trait Rule: RuleConfiguration + Debug {
// Required method
fn process(
&self,
block: &mut Block,
context: &Context<'_, '_, '_>,
) -> RuleProcessResult;
// Provided method
fn require_content(
&self,
_current_source: &Path,
_current_block: &Block,
) -> Vec<PathBuf> { ... }
}
Expand description
Defines an interface that will be used to mutate blocks and how to serialize and deserialize the rule configuration.
Required Methods§
Sourcefn process(
&self,
block: &mut Block,
context: &Context<'_, '_, '_>,
) -> RuleProcessResult
fn process( &self, block: &mut Block, context: &Context<'_, '_, '_>, ) -> RuleProcessResult
This method should mutate the given block to apply the rule
Provided Methods§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Box<dyn Rule>
impl<'de> Deserialize<'de> for Box<dyn Rule>
Source§fn deserialize<D: Deserializer<'de>>(
deserializer: D,
) -> Result<Box<dyn Rule>, D::Error>
fn deserialize<D: Deserializer<'de>>( deserializer: D, ) -> Result<Box<dyn Rule>, D::Error>
Deserialize this value from the given Serde deserializer. Read more