pub trait ParseTreeVisitorCompat<'input>: VisitChildren<'input, Self::Node> {
    type Node: ParserNodeType<'input>;
    type Return: Default;

    fn temp_result(&mut self) -> &mut Self::Return;

    fn visit(
        &mut self,
        node: &<Self::Node as ParserNodeType<'input>>::Type
    ) -> Self::Return { ... } fn visit_terminal(
        &mut self,
        _node: &TerminalNode<'input, Self::Node>
    ) -> Self::Return { ... } fn visit_error_node(
        &mut self,
        _node: &ErrorNode<'input, Self::Node>
    ) -> Self::Return { ... } fn visit_children(
        &mut self,
        node: &<Self::Node as ParserNodeType<'input>>::Type
    ) -> Self::Return { ... } fn aggregate_results(
        &self,
        aggregate: Self::Return,
        next: Self::Return
    ) -> Self::Return { ... } fn should_visit_next_child(
        &self,
        node: &<Self::Node as ParserNodeType<'input>>::Type,
        current: &Self::Return
    ) -> bool { ... } }

Required Associated Types

Required Methods

Temporary storage for ParseTreeVisitor blanket implementation to work

If you have () as a return value either use YourGrammarParseTreeVisitor directly or make

Box::leak(Box::new(()))

as an implementation of that method so that there is no need to create dummy field in your visitor

Provided Methods

Called on terminal(leaf) node

Called on error node

Implementors