ExprVisitor

Trait ExprVisitor 

Source
pub trait ExprVisitor<T> {
    // Required methods
    fn visit_literal_expr(&mut self, expr: &Expr) -> T;
    fn visit_logical_expr(&mut self, expr: &Expr) -> T;
    fn visit_unary_expr(&mut self, expr: &Expr) -> T;
    fn visit_binary_expr(&mut self, expr: &Expr) -> T;
    fn visit_grouping_expr(&mut self, expr: &Expr) -> T;
    fn visit_variable_expr(&mut self, expr: &Expr) -> T;
    fn visit_assign_expr(&mut self, expr: &Expr) -> T;
    fn visit_call_expr(&mut self, expr: &Expr) -> T;
    fn visit_get_expr(&mut self, expr: &Expr) -> T;
    fn visit_set_expr(&mut self, expr: &Expr) -> T;
    fn visit_this_expr(&mut self, expr: &Expr) -> T;
    fn visit_super_expr(&mut self, expr: &Expr) -> T;
}
Expand description

A visitor for expressions.

Required Methods§

Source

fn visit_literal_expr(&mut self, expr: &Expr) -> T

Source

fn visit_logical_expr(&mut self, expr: &Expr) -> T

Source

fn visit_unary_expr(&mut self, expr: &Expr) -> T

Source

fn visit_binary_expr(&mut self, expr: &Expr) -> T

Source

fn visit_grouping_expr(&mut self, expr: &Expr) -> T

Source

fn visit_variable_expr(&mut self, expr: &Expr) -> T

Source

fn visit_assign_expr(&mut self, expr: &Expr) -> T

Source

fn visit_call_expr(&mut self, expr: &Expr) -> T

Source

fn visit_get_expr(&mut self, expr: &Expr) -> T

Source

fn visit_set_expr(&mut self, expr: &Expr) -> T

Source

fn visit_this_expr(&mut self, expr: &Expr) -> T

Source

fn visit_super_expr(&mut self, expr: &Expr) -> T

Implementors§