markdown_it/parser/block/
rule.rs

1use crate::parser::core::rule_builder;
2use crate::Node;
3
4/// Each member of block rule chain must implement this trait
5pub trait BlockRule : 'static {
6    fn check(state: &mut super::BlockState) -> Option<()> {
7        Self::run(state).map(|_| ())
8    }
9
10    fn run(state: &mut super::BlockState) -> Option<(Node, usize)>;
11}
12
13rule_builder!(BlockRule);