Package com.strobel.assembler.metadata
Class ParameterizedType
- java.lang.Object
-
- com.strobel.assembler.metadata.MemberReference
-
- com.strobel.assembler.metadata.TypeReference
-
- com.strobel.assembler.metadata.ParameterizedType
-
- All Implemented Interfaces:
IAnnotationsProvider,IGenericContext,IGenericInstance,IGenericParameterProvider,IMetadataTypeMember
final class ParameterizedType extends TypeReference implements IGenericInstance
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.strobel.assembler.metadata.TypeReference
TypeReference.TypeFunctions
-
-
Field Summary
Fields Modifier and Type Field Description private TypeReference_genericDefinitionprivate java.util.List<TypeReference>_typeParameters-
Fields inherited from class com.strobel.assembler.metadata.TypeReference
EMPTY_REFERENCES
-
-
Constructor Summary
Constructors Constructor Description ParameterizedType(TypeReference genericDefinition, java.util.List<TypeReference> typeParameters)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <R,P>
Raccept(TypeMetadataVisitor<P,R> visitor, P parameter)TypeReferencegetDeclaringType()java.lang.StringgetFullName()IGenericParameterProvidergetGenericDefinition()java.util.List<GenericParameter>getGenericParameters()java.lang.StringgetInternalName()java.lang.StringgetName()java.lang.StringgetPackageName()java.lang.StringgetSimpleName()java.util.List<TypeReference>getTypeArguments()TypeReferencegetUnderlyingType()booleanhasTypeArguments()booleanisGenericDefinition()TypeDefinitionresolve()FieldDefinitionresolve(FieldReference field)MethodDefinitionresolve(MethodReference method)TypeDefinitionresolve(TypeReference type)-
Methods inherited from class com.strobel.assembler.metadata.TypeReference
appendBriefDescription, appendClassDescription, appendClassSignature, appendDescription, appendErasedClassSignature, appendErasedDescription, appendErasedSignature, appendGenericSignature, appendName, appendSignature, appendSimpleDescription, checkRecursive, containsGenericParameters, equals, findTypeVariable, getBriefDescription, getDescription, getElementType, getErasedDescription, getExtendsBound, getRawType, getSimpleDescription, getSimpleType, getSuperBound, hasExtendsBound, hasGenericParameters, hashCode, hasSuperBound, isArray, isBoundedType, isCompoundType, isEquivalentTo, isGenericParameter, isGenericType, isNested, isPrimitive, isUnbounded, isUnionType, isVoid, isWildcardType, makeArrayType, makeGenericType, makeGenericType, setDeclaringType, setName, toString
-
Methods inherited from class com.strobel.assembler.metadata.MemberReference
getAnnotations, getErasedSignature, getSignature, hasAnnotations, isDefinition, isSpecialName
-
-
-
-
Field Detail
-
_genericDefinition
private final TypeReference _genericDefinition
-
_typeParameters
private final java.util.List<TypeReference> _typeParameters
-
-
Constructor Detail
-
ParameterizedType
ParameterizedType(TypeReference genericDefinition, java.util.List<TypeReference> typeParameters)
-
-
Method Detail
-
getName
public java.lang.String getName()
- Specified by:
getNamein interfaceIMetadataTypeMember- Overrides:
getNamein classTypeReference
-
getPackageName
public java.lang.String getPackageName()
- Overrides:
getPackageNamein classTypeReference
-
getFullName
public java.lang.String getFullName()
- Overrides:
getFullNamein classTypeReference
-
getInternalName
public java.lang.String getInternalName()
- Overrides:
getInternalNamein classTypeReference
-
getDeclaringType
public TypeReference getDeclaringType()
- Specified by:
getDeclaringTypein interfaceIMetadataTypeMember- Overrides:
getDeclaringTypein classTypeReference
-
getSimpleName
public java.lang.String getSimpleName()
- Specified by:
getSimpleNamein classTypeReference
-
isGenericDefinition
public boolean isGenericDefinition()
- Specified by:
isGenericDefinitionin interfaceIGenericParameterProvider- Overrides:
isGenericDefinitionin classTypeReference
-
getGenericParameters
public java.util.List<GenericParameter> getGenericParameters()
- Specified by:
getGenericParametersin interfaceIGenericParameterProvider- Overrides:
getGenericParametersin classTypeReference
-
hasTypeArguments
public boolean hasTypeArguments()
- Specified by:
hasTypeArgumentsin interfaceIGenericInstance
-
getTypeArguments
public java.util.List<TypeReference> getTypeArguments()
- Specified by:
getTypeArgumentsin interfaceIGenericInstance
-
getGenericDefinition
public IGenericParameterProvider getGenericDefinition()
- Specified by:
getGenericDefinitionin interfaceIGenericInstance
-
getUnderlyingType
public TypeReference getUnderlyingType()
- Overrides:
getUnderlyingTypein classTypeReference
-
accept
public final <R,P> R accept(TypeMetadataVisitor<P,R> visitor, P parameter)
- Specified by:
acceptin classTypeReference
-
resolve
public TypeDefinition resolve()
- Overrides:
resolvein classTypeReference
-
resolve
public FieldDefinition resolve(FieldReference field)
- Overrides:
resolvein classTypeReference
-
resolve
public MethodDefinition resolve(MethodReference method)
- Overrides:
resolvein classTypeReference
-
resolve
public TypeDefinition resolve(TypeReference type)
- Overrides:
resolvein classTypeReference
-
-