Support text markup at the start of a regular link description.
Some checks failed
rust-build Build rust-build has succeeded
rust-test Build rust-test has succeeded
rust-foreign-document-test Build rust-foreign-document-test has failed

This commit is contained in:
Tom Alexander
2023-10-09 14:02:27 -04:00
parent adc5a383c3
commit 840dc0a750
4 changed files with 14 additions and 10 deletions

View File

@@ -108,7 +108,7 @@ pub(crate) fn radio_target<'b, 'g, 'r, 's>(
class: ExitClass::Gamma,
exit_matcher: &radio_target_end,
}),
ContextElement::StartRadioTarget(remaining),
ContextElement::StartTextSection(remaining),
];
let parser_context = context.with_additional_node(&contexts[0]);
let parser_context = parser_context.with_additional_node(&contexts[1]);

View File

@@ -397,11 +397,15 @@ fn description<'b, 'g, 'r, 's>(
context: RefContext<'b, 'g, 'r, 's>,
input: OrgSource<'s>,
) -> Res<OrgSource<'s>, Vec<Object<'s>>> {
let parser_context = ContextElement::ExitMatcherNode(ExitMatcherNode {
class: ExitClass::Beta,
exit_matcher: &description_end,
});
let parser_context = context.with_additional_node(&parser_context);
let contexts = [
ContextElement::ExitMatcherNode(ExitMatcherNode {
class: ExitClass::Beta,
exit_matcher: &description_end,
}),
ContextElement::StartTextSection(input),
];
let parser_context = context.with_additional_node(&contexts[0]);
let parser_context = parser_context.with_additional_node(&contexts[1]);
let (remaining, (children, _exit_contents)) = verify(
many_till(
parser_with_context!(regular_link_description_set_object)(&parser_context),

View File

@@ -295,7 +295,7 @@ fn pre<'b, 'g, 'r, 's>(
let radio_target_start = context
.iter()
.find_map(|c| match c {
ContextElement::StartRadioTarget(text) => Some(text),
ContextElement::StartTextSection(text) => Some(text),
_ => None,
})
.map(|text| text.get_byte_offset());