/* zweic -- a compiler for zwei * * Stephane Micheloud & LAMP * * $Id$ */ package zweic; /** * This class defines all binary operators of zwei. */ object Operators extends Enumeration { type Operator = Value; // binary val ADD = Value("+"); val SUB = Value("-"); val MUL = Value("*"); val DIV = Value("/"); val MOD = Value("%"); val EQ = Value("=="); val NE = Value("!="); val LT = Value("<"); val LE = Value("<="); val GT = Value(">"); val GE = Value(">="); val AND = Value("&&"); // unary val NEG = Value("-"); val NOT = Value("!"); import scala.collection.mutable.HashMap; val token2op = new HashMap[Tokens.Token, Operator](); token2op += Tokens.ADD -> ADD; token2op += Tokens.SUB -> SUB; token2op += Tokens.MUL -> MUL; token2op += Tokens.DIV -> DIV; token2op += Tokens.MOD -> MOD; token2op += Tokens.EQ -> EQ; token2op += Tokens.NE -> NE; token2op += Tokens.LT -> LT; token2op += Tokens.LE -> LE; token2op += Tokens.GT -> GT; token2op += Tokens.GE -> GE; token2op += Tokens.AND -> AND; token2op += Tokens.NOT -> NOT; }