#[derive(Clone, Debug, PartialEq)]
pub enum Type {
  Symbol,
  Integer,
  Boolean,
  String,
}

#[derive(Clone, Debug)]
pub enum BinaryOp {
  Eq,
  Ne,
  Lt,
  Lte,
  Gt,
  Gte,
  And,
  Or,
  Add,
  Sub,
  Mult,
  Div,
}

#[derive(Clone, Debug)]
pub enum UnaryOp {
  Not,
  Pos,
  Neg,
}
