Package com.strobel.assembler.metadata
Class CompoundTypeDefinition
- java.lang.Object
-
- com.strobel.assembler.metadata.MemberReference
-
- com.strobel.assembler.metadata.TypeReference
-
- com.strobel.assembler.metadata.TypeDefinition
-
- com.strobel.assembler.metadata.CompoundTypeDefinition
-
- All Implemented Interfaces:
IAnnotationsProvider
,ICompoundType
,IGenericContext
,IGenericParameterProvider
,IMemberDefinition
,IMetadataTypeMember
public final class CompoundTypeDefinition extends TypeDefinition implements ICompoundType
-
-
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
_baseType
private java.util.List<TypeReference>
_interfaces
private TypeReference
_underlyingType
-
Fields inherited from class com.strobel.assembler.metadata.TypeReference
EMPTY_REFERENCES
-
-
Constructor Summary
Constructors Constructor Description CompoundTypeDefinition(TypeReference baseType, java.util.List<TypeReference> interfaces, IMetadataResolver resolver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <R,P>
Raccept(TypeMetadataVisitor<P,R> visitor, P parameter)
java.lang.StringBuilder
appendBriefDescription(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendDescription(java.lang.StringBuilder sb)
protected java.lang.StringBuilder
appendErasedClassSignature(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendErasedDescription(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendErasedSignature(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendSignature(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendSimpleDescription(java.lang.StringBuilder sb)
boolean
containsGenericParameters()
java.lang.String
getFullName()
java.util.List<TypeReference>
getInterfaces()
java.lang.String
getInternalName()
java.lang.String
getName()
java.lang.String
getSimpleName()
TypeReference
getUnderlyingType()
boolean
isCompoundType()
-
Methods inherited from class com.strobel.assembler.metadata.TypeDefinition
appendGenericSignature, appendName, findTypeVariable, getAnnotations, getAnnotationsInternal, getBaseType, getCompilerMajorVersion, getCompilerMinorVersion, getCompilerTarget, getConstantPool, getDeclaredFields, getDeclaredFieldsInternal, getDeclaredMethods, getDeclaredMethodsInternal, getDeclaredTypes, getDeclaredTypesInternal, getDeclaringMethod, getEnumConstants, getErasedSignature, getExplicitInterfaces, getExplicitInterfacesInternal, getFlags, getGenericParameters, getGenericParametersInternal, getModifiers, getPackageName, getPermittedSubclasses, getPermittedSubclassesInternal, getRawType, getResolver, getSignature, getSimpleType, getSourceAttributes, getSourceAttributesInternal, getTypeLoader, isAnnotation, isAnonymous, isArray, isClass, isDefinition, isDeprecated, isEnum, isFinal, isInnerClass, isInterface, isLocalClass, isModule, isNested, isNonPublic, isNonSealed, isPackagePrivate, isPrimitive, isPrivate, isProtected, isPublic, isRecord, isSealed, isStatic, isSynthetic, resolve, setBaseType, setCompilerVersion, setConstantPool, setDeclaringMethod, setEnumConstants, setFlags, setPackageName, setResolver, setSimpleName, setTypeLoader
-
Methods inherited from class com.strobel.assembler.metadata.TypeReference
appendClassDescription, appendClassSignature, checkRecursive, equals, getBriefDescription, getDeclaringType, getDescription, getElementType, getErasedDescription, getExtendsBound, getSimpleDescription, getSuperBound, hasExtendsBound, hasGenericParameters, hashCode, hasSuperBound, isBoundedType, isEquivalentTo, isGenericDefinition, isGenericParameter, isGenericType, isUnbounded, isUnionType, isVoid, isWildcardType, makeArrayType, makeGenericType, makeGenericType, resolve, resolve, resolve, setDeclaringType, setName, toString
-
Methods inherited from class com.strobel.assembler.metadata.MemberReference
hasAnnotations, isSpecialName
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.strobel.assembler.metadata.ICompoundType
getBaseType, getResolver
-
Methods inherited from interface com.strobel.assembler.metadata.IMemberDefinition
getBriefDescription, getDeclaringType, getDescription, getErasedDescription, getSimpleDescription, isSpecialName
-
-
-
-
Field Detail
-
_underlyingType
@Nullable private final TypeReference _underlyingType
-
_baseType
private final TypeReference _baseType
-
_interfaces
private final java.util.List<TypeReference> _interfaces
-
-
Constructor Detail
-
CompoundTypeDefinition
CompoundTypeDefinition(TypeReference baseType, java.util.List<TypeReference> interfaces, IMetadataResolver resolver)
-
-
Method Detail
-
getInterfaces
public final java.util.List<TypeReference> getInterfaces()
- Specified by:
getInterfaces
in interfaceICompoundType
-
isCompoundType
public boolean isCompoundType()
- Overrides:
isCompoundType
in classTypeDefinition
-
getSimpleName
public java.lang.String getSimpleName()
- Overrides:
getSimpleName
in classTypeDefinition
-
containsGenericParameters
public boolean containsGenericParameters()
- Overrides:
containsGenericParameters
in classTypeReference
-
getName
public java.lang.String getName()
- Specified by:
getName
in interfaceIMemberDefinition
- Specified by:
getName
in interfaceIMetadataTypeMember
- Overrides:
getName
in classTypeReference
-
getFullName
public java.lang.String getFullName()
- Specified by:
getFullName
in interfaceIMemberDefinition
- Overrides:
getFullName
in classTypeDefinition
-
getInternalName
public java.lang.String getInternalName()
- Overrides:
getInternalName
in classTypeDefinition
-
getUnderlyingType
public TypeReference getUnderlyingType()
- Overrides:
getUnderlyingType
in classTypeReference
-
accept
public final <R,P> R accept(TypeMetadataVisitor<P,R> visitor, P parameter)
- Overrides:
accept
in classTypeDefinition
-
appendBriefDescription
public java.lang.StringBuilder appendBriefDescription(java.lang.StringBuilder sb)
- Overrides:
appendBriefDescription
in classTypeReference
-
appendSimpleDescription
public java.lang.StringBuilder appendSimpleDescription(java.lang.StringBuilder sb)
- Overrides:
appendSimpleDescription
in classTypeReference
-
appendErasedDescription
public java.lang.StringBuilder appendErasedDescription(java.lang.StringBuilder sb)
- Overrides:
appendErasedDescription
in classTypeReference
-
appendDescription
public java.lang.StringBuilder appendDescription(java.lang.StringBuilder sb)
- Overrides:
appendDescription
in classTypeDefinition
-
appendSignature
public java.lang.StringBuilder appendSignature(java.lang.StringBuilder sb)
- Overrides:
appendSignature
in classTypeReference
-
appendErasedSignature
public java.lang.StringBuilder appendErasedSignature(java.lang.StringBuilder sb)
- Overrides:
appendErasedSignature
in classTypeReference
-
appendErasedClassSignature
protected java.lang.StringBuilder appendErasedClassSignature(java.lang.StringBuilder sb)
- Overrides:
appendErasedClassSignature
in classTypeReference
-
-