|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object edu.ksu.cis.projects.bogor.module.value.DefaultExpASTValue
public class DefaultExpASTValue
The default implementation of IExpASTValue
.
Field Summary | |
---|---|
protected Exp |
exp
Holds the exp AST of this exp AST value. |
Constructor Summary | |
---|---|
protected |
DefaultExpASTValue(Exp exp)
Default constructor. |
Method Summary | |
---|---|
IExpASTValue |
clone(Map<Object,Object> cloneMap)
Override to specialize return type |
int |
compareTo(IValue o)
|
void |
dispose()
Remove references. |
boolean |
equals(Object o)
Classes implementing IValue should provide their own
equality tests. |
Exp |
getExp()
Gets the exp AST of this exp AST value. |
int |
getReferenceId()
Gets this non-primitive value reference id. |
Type |
getType()
Gets the type of this value. |
int |
getTypeId()
Gets the type id of this value. |
int |
hashCode()
Classes implementing IValue should provide their own
hashing method. |
String |
toString()
Gets the string representation of this value. |
void |
validate(IBogorConfiguration bc)
Freshen references to Bogor model checking components and other non-serializable objects. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected Exp exp
Constructor Detail |
---|
protected DefaultExpASTValue(Exp exp)
exp
- The exp AST for this AST value. Must be non-null.Method Detail |
---|
public Exp getExp()
IExpASTValue
getExp
in interface IExpASTValue
public int getReferenceId()
INonPrimitiveValue
getReferenceId
in interface INonPrimitiveValue
public Type getType()
IValue
getType
in interface IValue
Type.getTypeId()
public int getTypeId()
IValue
getTypeId
in interface IValue
Type.getTypeId()
public IExpASTValue clone(Map<Object,Object> cloneMap)
IExpASTValue
clone
in interface IExpASTValue
clone
in interface INonPrimitiveValue
clone
in interface IValue
cloneMap
- Original values (IValue
) to their clones (
IValue
) mapping. The clone map to solve
circular references in values. If this value is a key in the
map, then this method returns the value of the key in the map.
Must be non-null.
public void dispose()
Disposable
dispose
in interface Disposable
public String toString()
IValue
toString
in interface IValue
toString
in class Object
public void validate(IBogorConfiguration bc)
IValue
Freshen references to Bogor model checking components and other non-serializable objects. Generally, this can be done in a few steps:
Model checking components (IModule
implementations) should be
reacquired by fetching them from the parameter,
bc
:
valueFactory = bc.getValueFactory(); scheduler = bc.getSchedulingStrategist();
Any fields storing Type
objects should be treated as stale, but
still uniquely identifier by their integer typeId
field. This
can be used as a key to look up the correct Type
instances in the
new symbol table's typeId-to-type table:
typeField = bc.getSymbolTable().getTypeIdTypeTable().get(typeField.getTypeId());
Any IValueArray
objects contained can simply be "chained" by
their IValueArray.validate(IBogorConfiguration)
method:
someValueArray.validate(bc);
IValue
objects contained directly should not be handled
manually by this method; they will be dealt with directly when they are visited
later
validate
in interface IValue
bc
- The Bogor configuration to validate to.public boolean equals(Object o)
IValue
IValue
should provide their own
equality tests.
equals
in interface IValue
equals
in class Object
public int hashCode()
IValue
IValue
should provide their own
hashing method.
hashCode
in interface IValue
hashCode
in class Object
public int compareTo(IValue o)
compareTo
in interface Comparable<IValue>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |