pub trait AstVisitor<T, A: Debug + Clone, E> {
// Required methods
fn visit_function_call(
&self,
ast: &FunctionCall<A>,
context: T,
driver: &AstVisitorDriver,
) -> AstVisitorResult<T, E>;
fn visit_identifier(
&self,
ast: &Identifier<A>,
context: T,
driver: &AstVisitorDriver,
) -> AstVisitorResult<T, E>;
fn visit_argument_list(
&self,
ast: &ArgumentList<A>,
context: T,
driver: &AstVisitorDriver,
) -> AstVisitorResult<T, E>;
fn visit_argument(
&self,
ast: &Argument<A>,
context: T,
driver: &AstVisitorDriver,
) -> AstVisitorResult<T, E>;
fn visit_member_access_expr(
&self,
ast: &MemberAccessExpression<A>,
context: T,
driver: &AstVisitorDriver,
) -> AstVisitorResult<T, E>;
fn visit_binary_expr(
&self,
ast: &BinaryExpr<A>,
context: T,
driver: &AstVisitorDriver,
) -> AstVisitorResult<T, E>;
fn visit_ternary_expr(
&self,
ast: &TernaryExpr<A>,
context: T,
driver: &AstVisitorDriver,
) -> AstVisitorResult<T, E>;
fn visit_literal(
&self,
ast: (&Literal, &TextLocation, &A),
context: T,
driver: &AstVisitorDriver,
) -> AstVisitorResult<T, E>;
}Required Methods§
fn visit_function_call( &self, ast: &FunctionCall<A>, context: T, driver: &AstVisitorDriver, ) -> AstVisitorResult<T, E>
fn visit_identifier( &self, ast: &Identifier<A>, context: T, driver: &AstVisitorDriver, ) -> AstVisitorResult<T, E>
fn visit_argument_list( &self, ast: &ArgumentList<A>, context: T, driver: &AstVisitorDriver, ) -> AstVisitorResult<T, E>
fn visit_argument( &self, ast: &Argument<A>, context: T, driver: &AstVisitorDriver, ) -> AstVisitorResult<T, E>
fn visit_member_access_expr( &self, ast: &MemberAccessExpression<A>, context: T, driver: &AstVisitorDriver, ) -> AstVisitorResult<T, E>
fn visit_binary_expr( &self, ast: &BinaryExpr<A>, context: T, driver: &AstVisitorDriver, ) -> AstVisitorResult<T, E>
fn visit_ternary_expr( &self, ast: &TernaryExpr<A>, context: T, driver: &AstVisitorDriver, ) -> AstVisitorResult<T, E>
fn visit_literal( &self, ast: (&Literal, &TextLocation, &A), context: T, driver: &AstVisitorDriver, ) -> AstVisitorResult<T, E>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".