pub trait ExpressionVisitor {
type AdditionalInput: Default;
type Output: Default;
Show 15 methods
// Provided methods
fn visit_expression(
&mut self,
input: &Expression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_access(
&mut self,
input: &AccessExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_array(
&mut self,
input: &ArrayExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_binary(
&mut self,
input: &BinaryExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_call(
&mut self,
input: &CallExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_cast(
&mut self,
input: &CastExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_struct_init(
&mut self,
input: &StructExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_err(
&mut self,
_input: &ErrExpression,
_additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_identifier(
&mut self,
_input: &Identifier,
_additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_literal(
&mut self,
_input: &Literal,
_additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_locator(
&mut self,
_input: &LocatorExpression,
_additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_ternary(
&mut self,
input: &TernaryExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_tuple(
&mut self,
input: &TupleExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_unary(
&mut self,
input: &UnaryExpression,
additional: &Self::AdditionalInput,
) -> Self::Output { ... }
fn visit_unit(
&mut self,
_input: &UnitExpression,
_additional: &Self::AdditionalInput,
) -> Self::Output { ... }
}
Expand description
A Visitor trait for expressions in the AST.