ASTAssertStatement.java
package edu.udel.cis.vsl.tass.front.minimp.ast.statement;
import edu.udel.cis.vsl.tass.front.minimp.ast.expression.ASTExpressionIF;
import edu.udel.cis.vsl.tass.front.minimp.ast.misc.ASTIdentifier;
public class ASTAssertStatement extends ASTStatement {
private ASTExpressionIF assertion;
private String message = "";
private boolean isCollective = false;
private boolean isJoint = false;
private boolean isInvariant = false;
private ASTIdentifier id = null;
public ASTAssertStatement(ASTExpressionIF assertion) {
this.assertion = assertion;
}
public ASTAssertStatement(ASTExpressionIF assertion, String comment) {
this.assertion = assertion;
this.message = comment;
}
public ASTAssertStatement(ASTExpressionIF assertion, ASTIdentifier id) {
this.assertion = assertion;
this.id = id;
}
public ASTIdentifier id() {
return id;
}
public void setCollective(boolean collective) {
isCollective = collective;
}
public void setJoint(boolean joint) {
isJoint = joint;
}
public void setInvariant(boolean invariant) {
isInvariant = invariant;
}
public ASTExpressionIF getAssertion() {
return this.assertion;
}
public String getMessage() {
return this.message;
}
public boolean isCollective() {
return isCollective;
}
public boolean isJoint() {
return isJoint;
}
public boolean isInvariant() {
return isInvariant;
}
public String toString() {
String result = "assert "+ this.assertion.toString() + ";";
if (isCollective) {
result = "collective " + result;
}
return result;
}
}