public class JavaRefTypeInstance extends java.lang.Object implements JavaTypeInstance
Modifier and Type | Class and Description |
---|---|
private static class |
JavaRefTypeInstance.Annotated |
private static class |
JavaRefTypeInstance.RefTypeInnerClassInfo |
Modifier and Type | Field and Description |
---|---|
private BindingSuperContainer |
cachedBindingSupers |
private java.lang.String |
className |
private DCCommonState |
dcCommonState |
private InnerClassInfo |
innerClassInfo |
private java.lang.String |
shortName |
private java.lang.String |
suggestedVarName |
Modifier | Constructor and Description |
---|---|
private |
JavaRefTypeInstance(java.lang.String className,
DCCommonState dcCommonState) |
private |
JavaRefTypeInstance(java.lang.String className,
JavaRefTypeInstance knownOuter,
DCCommonState dcCommonState) |
private |
JavaRefTypeInstance(java.lang.String className,
java.lang.String displayableName,
JavaRefTypeInstance[] supers) |
private final java.lang.String className
private java.lang.String shortName
private java.lang.String suggestedVarName
private InnerClassInfo innerClassInfo
private final DCCommonState dcCommonState
private BindingSuperContainer cachedBindingSupers
private JavaRefTypeInstance(java.lang.String className, DCCommonState dcCommonState)
private JavaRefTypeInstance(java.lang.String className, JavaRefTypeInstance knownOuter, DCCommonState dcCommonState)
private JavaRefTypeInstance(java.lang.String className, java.lang.String displayableName, JavaRefTypeInstance[] supers)
public void setUnexpectedInnerClassOf(JavaRefTypeInstance parent)
public JavaAnnotatedTypeInstance getAnnotatedInstance()
getAnnotatedInstance
in interface JavaTypeInstance
public boolean isObject()
isObject
in interface JavaTypeInstance
public void markNotInner()
public java.lang.String suggestVarName()
suggestVarName
in interface JavaTypeInstance
public static JavaRefTypeInstance create(java.lang.String rawClassName, DCCommonState dcCommonState)
public static Pair<JavaRefTypeInstance,JavaRefTypeInstance> createKnownInnerOuter(java.lang.String inner, java.lang.String outer, JavaRefTypeInstance outerType, DCCommonState dcCommonState)
static JavaRefTypeInstance createTypeConstant(java.lang.String rawClassName, java.lang.String displayableName, JavaRefTypeInstance... supers)
public static JavaRefTypeInstance createTypeConstant(java.lang.String rawClassName, JavaRefTypeInstance... supers)
static JavaRefTypeInstance createTypeConstantWithObjectSuper(java.lang.String rawClassName)
public StackType getStackType()
getStackType
in interface JavaTypeInstance
public void dumpInto(Dumper d, TypeUsageInformation typeUsageInformation, TypeContext typeContext)
dumpInto
in interface JavaTypeInstance
public java.lang.String getPackageName()
public java.lang.String toString()
toString
in class java.lang.Object
public JavaTypeInstance getArrayStrippedType()
getArrayStrippedType
in interface JavaTypeInstance
public int getNumArrayDimensions()
getNumArrayDimensions
in interface JavaTypeInstance
public java.lang.String getRawName()
getRawName
in interface JavaTypeInstance
public java.lang.String getRawShortName()
public java.lang.String getRawName(IllegalIdentifierDump iid)
getRawName
in interface JavaTypeInstance
public java.lang.String getRawShortName(IllegalIdentifierDump iid)
public int hashCode()
hashCode
in class java.lang.Object
public InnerClassInfo getInnerClassHereInfo()
getInnerClassHereInfo
in interface JavaTypeInstance
public void forceBindingSupers(BindingSuperContainer bindingSuperContainer)
public BindingSuperContainer getBindingSupers()
getBindingSupers
in interface JavaTypeInstance
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public boolean isComplexType()
isComplexType
in interface JavaTypeInstance
public boolean isUsableType()
isUsableType
in interface JavaTypeInstance
public JavaTypeInstance removeAnArrayIndirection()
removeAnArrayIndirection
in interface JavaTypeInstance
public JavaTypeInstance getDeGenerifiedType()
getDeGenerifiedType
in interface JavaTypeInstance
public RawJavaType getRawTypeOfSimpleType()
getRawTypeOfSimpleType
in interface JavaTypeInstance
public JavaTypeInstance deObfuscate(ObfuscationTypeMap obfuscationTypeMap)
deObfuscate
in interface JavaTypeInstance
public boolean implicitlyCastsTo(JavaTypeInstance other, GenericTypeBinder gtb)
implicitlyCastsTo
in interface JavaTypeInstance
public JavaTypeInstance directImplOf(JavaTypeInstance other)
directImplOf
in interface JavaTypeInstance
public boolean impreciseCanCastTo(JavaTypeInstance other, GenericTypeBinder gtb)
impreciseCanCastTo
in interface JavaTypeInstance
public boolean correctCanCastTo(JavaTypeInstance other, GenericTypeBinder gtb)
correctCanCastTo
in interface JavaTypeInstance
public ClassFile getClassFile()
private static java.lang.String getShortName(java.lang.String fullClassName)
private static java.lang.String getShortName(java.lang.String fullClassName, InnerClassInfo innerClassInfo)
public void collectInto(TypeUsageCollector typeUsageCollector)
collectInto
in interface JavaTypeInstance
public JavaGenericRefTypeInstance asGenericRefInstance(JavaTypeInstance other)
asGenericRefInstance
in interface JavaTypeInstance
public boolean isRaw()
isRaw
in interface JavaTypeInstance