Class JavaGenericRefTypeInstance
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.types.JavaGenericRefTypeInstance
- All Implemented Interfaces:
ComparableUnderEC
,JavaGenericBaseInstance
,JavaTypeInstance
public class JavaGenericRefTypeInstance
extends Object
implements JavaGenericBaseInstance, ComparableUnderEC
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate class
static class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List<JavaTypeInstance>
private final boolean
private final JavaRefTypeInstance
private static final JavaGenericRefTypeInstance.WildcardConstraint
-
Constructor Summary
ConstructorsConstructorDescriptionJavaGenericRefTypeInstance
(JavaTypeInstance typeInstance, List<JavaTypeInstance> genericTypes) -
Method Summary
Modifier and TypeMethodDescriptionvoid
collectInto
(TypeUsageCollector typeUsageCollector) boolean
correctCanCastTo
(JavaTypeInstance other, GenericTypeBinder gtb) deObfuscate
(ObfuscationTypeMap obfuscationTypeMap) directImplOf
(JavaTypeInstance other) void
dumpInto
(Dumper d, TypeUsageInformation typeUsageInformation, TypeContext typeContext) boolean
boolean
equivalentUnder
(Object o, EquivalenceConstraint constraint) getBoundInstance
(GenericTypeBinder genericTypeBinder) int
boolean
hasForeignUnbound
(ConstantPool cp, int depth, boolean noWildcard, Map<String, FormalTypeParameter> externals) int
hashCode()
boolean
boolean
boolean
implicitlyCastsTo
(JavaTypeInstance other, GenericTypeBinder gtb) boolean
impreciseCanCastTo
(JavaTypeInstance other, GenericTypeBinder gtb) boolean
boolean
isObject()
boolean
isRaw()
boolean
toString()
boolean
tryFindBinding
(JavaTypeInstance other, GenericTypeBinder target)
-
Field Details
-
WILDCARD_CONSTRAINT
-
typeInstance
-
genericTypes
-
hasUnbound
private final boolean hasUnbound
-
-
Constructor Details
-
JavaGenericRefTypeInstance
public JavaGenericRefTypeInstance(JavaTypeInstance typeInstance, List<JavaTypeInstance> genericTypes)
-
-
Method Details
-
collectInto
- Specified by:
collectInto
in interfaceJavaTypeInstance
-
getAnnotatedInstance
- Specified by:
getAnnotatedInstance
in interfaceJavaTypeInstance
-
hasUnbound
public boolean hasUnbound()- Specified by:
hasUnbound
in interfaceJavaGenericBaseInstance
-
hasForeignUnbound
public boolean hasForeignUnbound(ConstantPool cp, int depth, boolean noWildcard, Map<String, FormalTypeParameter> externals) - Specified by:
hasForeignUnbound
in interfaceJavaGenericBaseInstance
-
isObject
public boolean isObject()- Specified by:
isObject
in interfaceJavaTypeInstance
-
hasL01Wildcard
public boolean hasL01Wildcard()- Specified by:
hasL01Wildcard
in interfaceJavaGenericBaseInstance
-
getWithoutL01Wildcard
- Specified by:
getWithoutL01Wildcard
in interfaceJavaGenericBaseInstance
-
getBoundInstance
- Specified by:
getBoundInstance
in interfaceJavaGenericBaseInstance
-
tryFindBinding
- Specified by:
tryFindBinding
in interfaceJavaGenericBaseInstance
-
getStackType
- Specified by:
getStackType
in interfaceJavaTypeInstance
-
dumpInto
- Specified by:
dumpInto
in interfaceJavaTypeInstance
-
toString
-
getArrayStrippedType
- Specified by:
getArrayStrippedType
in interfaceJavaTypeInstance
-
getGenericTypes
- Specified by:
getGenericTypes
in interfaceJavaGenericBaseInstance
-
getDeGenerifiedType
- Specified by:
getDeGenerifiedType
in interfaceJavaTypeInstance
-
getNumArrayDimensions
public int getNumArrayDimensions()- Specified by:
getNumArrayDimensions
in interfaceJavaTypeInstance
-
hashCode
public int hashCode() -
getRawName
- Specified by:
getRawName
in interfaceJavaTypeInstance
-
getRawName
- Specified by:
getRawName
in interfaceJavaTypeInstance
-
getInnerClassHereInfo
- Specified by:
getInnerClassHereInfo
in interfaceJavaTypeInstance
-
getTypeInstance
-
getBindingSupers
- Specified by:
getBindingSupers
in interfaceJavaTypeInstance
-
equals
-
equivalentUnder
- Specified by:
equivalentUnder
in interfaceComparableUnderEC
-
isComplexType
public boolean isComplexType()- Specified by:
isComplexType
in interfaceJavaTypeInstance
-
isUsableType
public boolean isUsableType()- Specified by:
isUsableType
in interfaceJavaTypeInstance
-
removeAnArrayIndirection
- Specified by:
removeAnArrayIndirection
in interfaceJavaTypeInstance
-
getRawTypeOfSimpleType
- Specified by:
getRawTypeOfSimpleType
in interfaceJavaTypeInstance
-
implicitlyCastsTo
- Specified by:
implicitlyCastsTo
in interfaceJavaTypeInstance
-
impreciseCanCastTo
- Specified by:
impreciseCanCastTo
in interfaceJavaTypeInstance
-
correctCanCastTo
- Specified by:
correctCanCastTo
in interfaceJavaTypeInstance
-
suggestVarName
- Specified by:
suggestVarName
in interfaceJavaTypeInstance
-
asGenericRefInstance
- Specified by:
asGenericRefInstance
in interfaceJavaTypeInstance
-
directImplOf
- Specified by:
directImplOf
in interfaceJavaTypeInstance
-
deObfuscate
- Specified by:
deObfuscate
in interfaceJavaTypeInstance
-
isRaw
public boolean isRaw()- Specified by:
isRaw
in interfaceJavaTypeInstance
-