/* ____ ____ ____ ____ ______ *\ ** / __// __ \/ __// __ \/ ____/ SOcos COmpiles Scala ** ** __\_ \/ /_/ / /__/ /_/ /\_ \ (c) 2002, LAMP/EPFL ** ** /_____/\____/\___/\____/____/ ** \* */ // $Id$ package meta.scalac; /** A representation for Scala compiler phases. */ public class Phase { //######################################################################## // Public Constants public static final Phase START = new Phase("start", null), PARSER = new Phase("parser", "PARSER"), ANALYZER = new Phase("analyzer", "ANALYZER"), DESUGARIZER = new Phase("desugarizer", "ANALYZER"), REFCHECK = new Phase("refcheck", "REFCHECK"), UNCURRY = new Phase("uncurry", "UNCURRY"), LAMBDALIFT = new Phase("lambdalift", "LAMBDALIFT"), TRANSMATCH = new Phase("transmatch", "TRANSMATCH"), OPTIMIZER = new Phase("optimizer", null), // !!! "OPTIMIZE" ERASURE = new Phase("erasure", "ERASURE"), UNKNOWN = new Phase("? !!!", null), END = new Phase("-", null); //######################################################################## // Public Fields public final String name; public final String constant; //######################################################################## // Public Constructors public Phase(String name, String constant) { this.name = name; this.constant = constant; } //######################################################################## }