CommonMPIConstantNode.java
package edu.udel.cis.vsl.abc.ast.node.common.acsl;
import java.io.PrintStream;
import java.util.Arrays;
import edu.udel.cis.vsl.abc.ast.node.IF.acsl.MPIContractConstantNode;
import edu.udel.cis.vsl.abc.token.IF.Source;
public class CommonMPIConstantNode extends CommonMPIContractExpressionNode
implements
MPIContractConstantNode {
private MPIConstantKind kind;
private ConstantKind constKind;
private String stringReresentation;
private String exprName;
public CommonMPIConstantNode(Source source, String name,
MPIConstantKind kind, ConstantKind constKind) {
super(source, Arrays.asList(),
MPIContractExpressionKind.MPI_INTEGER_CONSTANT, name);
this.kind = kind;
this.constKind = constKind;
this.exprName = name;
}
@Override
public MPIConstantKind getMPIConstantKind() {
return kind;
}
@Override
public MPIContractConstantNode copy() {
return new CommonMPIConstantNode(getSource(), exprName, kind,
constKind);
}
@Override
protected void printBody(PrintStream out) {
out.print(kind);
}
@Override
public ConstantKind constantKind() {
return constKind;
}
@Override
public String getStringRepresentation() {
return this.stringReresentation;
}
@Override
public void setStringRepresentation(String representation) {
this.stringReresentation = representation;
}
}