Affectation de variable

This commit is contained in:
2024-06-04 08:16:58 +02:00
parent e121ba2160
commit 897a6c4c13
6 changed files with 64 additions and 18 deletions

View File

@@ -1,5 +1,11 @@
use crate::token::Token;
#[derive(Clone)]
pub struct Assign {
pub name: Token,
pub value: Box<Expr>,
}
#[derive(Clone)]
pub struct Binary {
pub left: Box<Expr>,
@@ -38,6 +44,7 @@ pub enum Expr {
LiteralExpr(Literal),
UnaryExpr(Unary),
VariableExpr(Variable),
AssignExpr(Assign),
}
pub trait ExprVisitor<T> {
@@ -47,5 +54,6 @@ pub trait ExprVisitor<T> {
fn visit_unary(&mut self, u: &Unary) -> T;
fn visit_expr(&mut self, e: &Expr) -> T;
fn visit_variable(&mut self, v: &Variable) -> T;
fn visit_assign(&mut self, a: &Assign) -> T;
}