package Temp; import Symbol.Symbol; /** * A Label represents an address in assembly language. */ public class Label { private String name; private static int count; /** * a printable representation of the label, for use in assembly * language output. */ public String toString() {return name;} /** * Makes a new label that prints as "name". * Warning: avoid repeated calls to new Label(s) with * the same name s. */ public Label(String n) { name=n; } /** * Makes a new label with an arbitrary name. */ public Label() { this("L" + count++); } /** * Makes a new label whose name is the same as a symbol. */ public Label(Symbol s) { this(s.toString()); } }