use crate::{expression::Expression, token::Token}; /// Enumeration of all types of statements. #[derive(Debug, Clone, PartialEq)] pub enum Statement { Block(Vec), Print(Expression), Expression(Expression), Var { name: Token, initializer: Box>, }, If { condition: Expression, then_branch: Box, else_branch: Option>, }, While { condition: Expression, body: Box, }, }