|
ESC/Java2 © 2003,2004,2005,2006 David Cok and Joseph Kiniry © 2005,2006 UCD Dublin © 2003,2004 Radboud University Nijmegen © 1999,2000 Compaq Computer Corporation © 1997,1998,1999 Digital Equipment Corporation All Rights Reserved |
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectescjava.vcGeneration.TNode
| Field Summary | |
static TypeInfo |
_boolean
|
static TypeInfo |
_char
|
static TypeInfo |
_double
|
static TypeInfo |
_DOUBLETYPE
|
static TypeInfo |
_Field
|
static TypeInfo |
_float
|
static TypeInfo |
_integer
|
static TypeInfo |
_INTTYPE
|
static TypeInfo |
_Path
|
static TypeInfo |
_Reference
We add some types that we know will be used to avoid looking at the map typesName when we want to add it. |
static TypeInfo |
_String
|
static TypeInfo |
_Time
|
static TypeInfo |
_Type
|
protected static int |
counter
|
protected static java.io.PrintStream |
dotPs
|
protected int |
id
|
protected boolean |
isroot
|
(package private) java.lang.String |
label
|
protected static int |
lastType
|
TFunction |
parent
|
static ProverType |
prover
|
TypeInfo |
type
|
protected static boolean |
typeProofSet
|
static java.util.HashMap |
typesName
map containing all the types used in the proof. |
protected static java.util.HashMap |
variablesName
map containing the variables names When the tree is created, old name are entered as keys with a new VariableInfo(oldName, type) associated as value.
|
| Constructor Summary | |
TNode()
|
|
| Method Summary | |
abstract void |
accept(TVisitor v)
|
static VariableInfo |
addName(java.lang.String oldName,
java.lang.String type)
|
static VariableInfo |
addName(java.lang.String oldName,
java.lang.String type,
java.lang.String def)
This function add variable to the global map name. |
static TypeInfo |
addType(java.lang.String oldType)
|
static TypeInfo |
addType(java.lang.String oldType,
java.lang.String def)
This function add type to the global map . |
protected java.lang.String |
dotId()
dot id which is unique because of adding 'id' to the name of the node |
protected void |
generateDeclarations(java.io.Writer s,
ProverType p)
|
protected java.lang.String |
getShortName()
|
java.lang.String |
getType()
return the type of the node according to the type of proof asked or "?" |
TypeInfo |
getTypeInfo()
Return the typeInfo associated with this node. |
(package private) VariableInfo |
getVariableInfo()
return the VariableInfo object associated of the caller which
must be an instance of TName. |
static VariableInfo |
getVariableInfo(java.lang.String name)
return the VariableInfo object associated with this name |
static void |
init(ProverType prover)
|
static void |
printInfo()
|
protected void |
setType(java.lang.String s,
boolean sure)
Add the type if not present to the global map of type and fill the correct field with it. |
protected void |
setType(TypeInfo type,
boolean sure)
|
java.lang.String |
toString()
|
protected abstract void |
typeTree()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
protected static java.io.PrintStream dotPs
protected int id
protected static int counter
protected boolean isroot
public TypeInfo type
protected static int lastType
protected static boolean typeProofSet
public TFunction parent
java.lang.String label
protected static java.util.HashMap variablesName
VariableInfo(oldName, type) associated as value.
When the vc are generated, each time a variable is looked at, we look
at this map. We look into the VariableInfo object associated.
If the renaming hasn't been done into this object, we do it.
If present, we use the already existing name.
Thus we will only rename one time and use previous value for next acccess.
It handles multiple renaming because each VariableInfo object contains
multiples fields for renaming (take a look at it).
public static java.util.HashMap typesName
typeTree, each node has his TypeInfo field
not null. It points on a TypeInfo object which is a value of this HashMap.
Each TypeInfo object contains the old type, the pvs corresponding type,
and the sammy corresponding type.
The old type can be {reference, integer, boolean, type}.
The tree is typechecked after call to SetOutputType and
this map is filled with only the type asked.
Ie if you call setOutputType("unsortedPvs"), the tree will be typed
with the old type and the types for the unsorted logic of pvs.
If you make another call to setOutputType, it will add type the tree
for the new tree etc...
public static TypeInfo _Reference
public static TypeInfo _Type
public static TypeInfo _DOUBLETYPE
public static TypeInfo _boolean
public static TypeInfo _char
public static TypeInfo _double
public static TypeInfo _Field
public static TypeInfo _INTTYPE
public static TypeInfo _integer
public static TypeInfo _float
public static TypeInfo _String
public static TypeInfo _Time
public static TypeInfo _Path
public static ProverType prover
| Constructor Detail |
public TNode()
| Method Detail |
public static void init(ProverType prover)
protected void generateDeclarations(java.io.Writer s,
ProverType p)
throws java.io.IOException
java.io.IOException
public static VariableInfo addName(java.lang.String oldName,
java.lang.String type,
java.lang.String def)
oldName - the old name.type - the type of the variable which has been infered from the old tree.
public static VariableInfo addName(java.lang.String oldName,
java.lang.String type)
public static VariableInfo getVariableInfo(java.lang.String name)
VariableInfo object associated with this name
VariableInfo getVariableInfo()
VariableInfo object associated of the caller which
must be an instance of TName.
public static TypeInfo addType(java.lang.String oldType,
java.lang.String def)
public static TypeInfo addType(java.lang.String oldType)
protected java.lang.String dotId()
protected java.lang.String getShortName()
protected abstract void typeTree()
protected void setType(java.lang.String s,
boolean sure)
protected void setType(TypeInfo type,
boolean sure)
public java.lang.String getType()
public TypeInfo getTypeInfo()
public java.lang.String toString()
public abstract void accept(TVisitor v)
throws java.io.IOException
java.io.IOExceptionpublic static void printInfo()
|
ESC/Java2 © 2003,2004,2005,2006 David Cok and Joseph Kiniry © 2005,2006 UCD Dublin © 2003,2004 Radboud University Nijmegen © 1999,2000 Compaq Computer Corporation © 1997,1998,1999 Digital Equipment Corporation All Rights Reserved |
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||