SharedCell.java
package edu.udel.cis.vsl.tass.dynamic.impl.cell;
import edu.udel.cis.vsl.tass.dynamic.IF.cell.SharedCellIF;
import edu.udel.cis.vsl.tass.model.IF.ModelIF;
import edu.udel.cis.vsl.tass.model.IF.variable.SharedVariableIF;
public class SharedCell extends Cell implements SharedCellIF {
private SharedVariableIF variable;
SharedCell(SharedVariableIF variable) {
super(DynamicScope.SHARED);
assert variable != null;
this.variable = variable;
}
@Override
public int sharedVariableId() {
return variable().idInScope();
}
@Override
public SharedVariableIF variable() {
return variable;
}
@Override
public ModelIF model() {
return variable.model();
}
public String toString() {
String result = variable.name();
return result;
}
public boolean equals(Object object) {
if (object instanceof SharedCell) {
SharedCell that = (SharedCell) object;
return super.equals(that) && variable.equals(that.variable);
}
return false;
}
public int hashCode() {
return super.hashCode() + variable.hashCode();
}
}