6 public class BooleanLiteralExpr extends LiteralExpr {
10 public BooleanLiteralExpr(boolean value) {
12 td = ReservedTypeDescriptor.INT;
15 public boolean usesDescriptor(Descriptor d) {
19 public String name() {
25 public boolean equals(Map remap, Expr e) {
28 else if (!(e instanceof BooleanLiteralExpr))
30 else return (((BooleanLiteralExpr)e).value==value);
33 public boolean getValue() {
37 public void generate(CodeWriter writer, VarDescriptor dest) {
38 writer.addDeclaration("int", dest.getSafeSymbol());
39 writer.outputline(dest.getSafeSymbol() + " = " + (value ? "1" : "0") + ";");
42 public void prettyPrint(PrettyPrinter pp) {
43 pp.output(value ? "true" : "false");
46 public TypeDescriptor typecheck(SemanticAnalyzer sa) {
47 td = ReservedTypeDescriptor.INT;