From 5899bde66e90a2575b544ad4c763064ecf806baf Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Sat, 10 Dec 2022 21:10:37 -0500 Subject: [PATCH] Add comment of what I need to do. --- src/parser/text_element_parser.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/parser/text_element_parser.rs b/src/parser/text_element_parser.rs index 9ee7ffc..c621533 100644 --- a/src/parser/text_element_parser.rs +++ b/src/parser/text_element_parser.rs @@ -56,12 +56,15 @@ where T: for<'a> Fn(Context<'a>, I) -> IResult + 'r, { move |mut i: I| { - let mut ret = Vec::new(); let mut current_context = context.clone(); loop { let len = i.input_len(); match till_matcher(¤t_context, i.clone()) { - Ok((remaining, finish)) => return Ok((remaining, (ret, finish))), + Ok((remaining, finish)) => { + let mut ret = Vec::new(); + // TODO build a vec of the elements by popping off the newest elements of the context + return Ok((remaining, (ret, finish))); + } Err(nom::Err::Error(_)) => { match many_matcher(¤t_context, i.clone()) { Err(nom::Err::Error(err)) => { @@ -77,7 +80,6 @@ where ))); } - ret.push(many_elem); current_context = current_context.with_additional_node( ContextElement::PreviousElementNode(PreviousElementNode { element: many_elem.into(),