public static class TypeData.TypeVar extends TypeData.AbsTypeVar
TypeData.AbsTypeVar, TypeData.ArrayElement, TypeData.ArrayType, TypeData.BasicType, TypeData.ClassName, TypeData.NullType, TypeData.TypeVar, TypeData.UninitData, TypeData.UninitThis, TypeData.UninitTypeVar| Modifier and Type | Field and Description |
|---|---|
protected java.lang.String |
fixedType |
private boolean |
inList |
private boolean |
is2WordType |
protected java.util.ArrayList |
lowers |
private int |
smallest |
protected java.util.ArrayList |
uppers |
protected java.util.ArrayList |
usedBy |
private int |
visited |
| Modifier and Type | Method and Description |
|---|---|
int |
dfs(java.util.ArrayList preOrder,
int index,
ClassPool cp) |
private CtClass |
fixByUppers(java.util.ArrayList users,
ClassPool cp,
java.util.HashSet visited,
CtClass type) |
private void |
fixTypes(java.util.ArrayList scc,
ClassPool cp) |
private java.lang.String |
fixTypes2(java.util.ArrayList scc,
java.util.HashSet lowersSet,
ClassPool cp) |
java.lang.String |
getName() |
int |
getTypeData(ConstPool cp) |
int |
getTypeTag() |
boolean |
is2WordType() |
TypeData.BasicType |
isBasicType()
If the type is a basic type, this method normalizes the type
and returns a BasicType object.
|
boolean |
isNullType()
Returns false if getName() returns a valid type name.
|
private static boolean |
isObjectArray(CtClass cc) |
boolean |
isUninit() |
void |
merge(TypeData t) |
void |
setType(java.lang.String typeName,
ClassPool cp) |
protected TypeData.TypeVar |
toTypeVar()
Returns this if it is a TypeVar or a TypeVar that this
type depends on.
|
eqaastore, commonSuperClass, commonSuperClassEx, constructorCalled, eq, join, makeprotected java.util.ArrayList lowers
protected java.util.ArrayList usedBy
protected java.util.ArrayList uppers
protected java.lang.String fixedType
private boolean is2WordType
private int visited
private int smallest
private boolean inList
public TypeVar(TypeData t)
public TypeData.BasicType isBasicType()
TypeDataisBasicType in class TypeDatapublic boolean is2WordType()
is2WordType in class TypeDatapublic boolean isNullType()
TypeDataisNullType in class TypeDatapublic void merge(TypeData t)
merge in class TypeData.AbsTypeVarpublic int getTypeTag()
getTypeTag in class TypeData.AbsTypeVarpublic int getTypeData(ConstPool cp)
getTypeData in class TypeData.AbsTypeVarpublic void setType(java.lang.String typeName,
ClassPool cp)
throws BadBytecode
setType in class TypeDataBadBytecodeprotected TypeData.TypeVar toTypeVar()
TypeDatapublic int dfs(java.util.ArrayList preOrder,
int index,
ClassPool cp)
throws NotFoundException
dfs in class TypeDataNotFoundExceptionprivate void fixTypes(java.util.ArrayList scc,
ClassPool cp)
throws NotFoundException
NotFoundExceptionprivate java.lang.String fixTypes2(java.util.ArrayList scc,
java.util.HashSet lowersSet,
ClassPool cp)
throws NotFoundException
NotFoundExceptionprivate static boolean isObjectArray(CtClass cc) throws NotFoundException
NotFoundExceptionprivate CtClass fixByUppers(java.util.ArrayList users, ClassPool cp, java.util.HashSet visited, CtClass type) throws NotFoundException
NotFoundException