use crate::token::{self, Token}; /// Enumeration of all types of expressions. #[derive(Debug, Clone, PartialEq)] pub enum Expression { Assign { name: Token, value: Box, }, Binary { left: Box, operator: Token, right: Box, }, Grouping { expression: Box, }, Literal { value: token::Literal, }, Unary { operator: Token, right: Box, }, Variable { name: Token, }, }