fn commutative_binop_(&mut self) -> WeldResult<BinOpKind> {
        match *self.peek() {
            TPlus => {
                self.consume(TPlus)?;
                Ok(Add)
            }
            TTimes => {
                self.consume(TTimes)?;
                Ok(Multiply)
            }
            TMax => {
                self.consume(TMax)?;
                Ok(Max)
            }
            TMin => {
                self.consume(TMin)?;
                Ok(Min)
            }
            ref t => compile_err!("expected commutative binary op in but got '{}'", t),
        }
    }
Parses a commutative binary operator, used by builders.
weld/src/syntax/parser.rs