use super::prelude::*;
pub const RULE_STRIKETHROUGH: Rule = Rule {
name: "strikethrough",
try_consume_fn,
};
fn try_consume_fn<'p, 'r, 't>(
log: &slog::Logger,
parser: &'p mut Parser<'r, 't>,
) -> ParseResult<'r, 't, Elements<'t>> {
debug!(log, "Trying to create strikethrough container");
check_step(parser, Token::DoubleDash)?;
collect_container(
log,
parser,
RULE_STRIKETHROUGH,
ContainerType::Strikethrough,
&[ParseCondition::current(Token::DoubleDash)],
&[
ParseCondition::current(Token::ParagraphBreak),
ParseCondition::token_pair(Token::DoubleDash, Token::Whitespace),
ParseCondition::token_pair(Token::Whitespace, Token::DoubleDash),
],
None,
)
}