use super::prelude::*;
pub const RULE_UNDERLINE: Rule = Rule {
name: "underline",
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 underline container");
check_step(parser, Token::Underline)?;
collect_container(
log,
parser,
RULE_UNDERLINE,
ContainerType::Underline,
&[ParseCondition::current(Token::Underline)],
&[
ParseCondition::current(Token::ParagraphBreak),
ParseCondition::token_pair(Token::Underline, Token::Whitespace),
ParseCondition::token_pair(Token::Whitespace, Token::Underline),
],
None,
)
}