/* * Code formatter project * CS 4481 */ package submit.ast; /** * * @author edwajohn */ public class Assignment extends AbstractNode implements Expression { private final Mutable mutable; private final AssignmentType type; private final Expression rhs; public Assignment(Mutable mutable, String assign, Expression rhs) { this.mutable = mutable; this.type = AssignmentType.fromString(assign); this.rhs = rhs; } public void toCminus(StringBuilder builder, final String prefix) { mutable.toCminus(builder, prefix); if (rhs != null) { builder.append(" ").append(type.toString()).append(" "); rhs.toCminus(builder, prefix); } else { builder.append(type.toString()); } } }