diff --git a/src/parser/parser_context.rs b/src/parser/parser_context.rs index 445884ac..8618e0ee 100644 --- a/src/parser/parser_context.rs +++ b/src/parser/parser_context.rs @@ -66,10 +66,10 @@ impl<'r, 's> ContextTree<'r, 's> { return at_end_of_file; } - let blocked_context = - self.with_additional_node(ContextElement::ExitMatcherNode(ExitMatcherNode { - exit_matcher: ChainBehavior::IgnoreParent(Some(&always_fail)), - })); + // let blocked_context = + // self.with_additional_node(ContextElement::ExitMatcherNode(ExitMatcherNode { + // exit_matcher: ChainBehavior::IgnoreParent(Some(&always_fail)), + // })); for current_node in self.iter() { let context_element = current_node.get_data(); @@ -77,14 +77,14 @@ impl<'r, 's> ContextTree<'r, 's> { ContextElement::ExitMatcherNode(exit_matcher) => { match exit_matcher.exit_matcher { ChainBehavior::AndParent(Some(matcher)) => { - let local_result = matcher(&blocked_context, i); + let local_result = matcher(self, i); if local_result.is_ok() { return local_result; } } ChainBehavior::AndParent(None) => {} ChainBehavior::IgnoreParent(Some(matcher)) => { - let local_result = matcher(&blocked_context, i); + let local_result = matcher(self, i); if local_result.is_ok() { return local_result; }