Interface IBinaryType
- All Superinterfaces:
IBinaryInfo
,IDependent
,IElementInfo
,IGenericType
- All Known Implementing Classes:
ClassFileReader
,CodeSnippetSkeleton
,CompactTypeStructureRepresentation
,ExternalAnnotationDecorator
,HierarchyBinaryType
-
Field Summary
Modifier and TypeFieldDescriptionstatic final IBinaryField[]
static final char[][]
static final IBinaryMethod[]
static final IBinaryNestedType[]
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.env.IDependent
JAR_FILE_ENTRY_SEPARATOR
-
Method Summary
Modifier and TypeMethodDescriptionenrichWithExternalAnnotationsFor
(ITypeAnnotationWalker walker, Object member, LookupEnvironment environment) Answer a type annotation walker that takes into consideration also external annotations.Answer the runtime visible and invisible annotations for this type or null if none.char[]
Answer the enclosing method (including method selector and method descriptor), or null if none.char[]
Answer the resolved name of the enclosing type in the class file format as specified in section 4.2 of the Java 2 VM spec or null if the receiver is a top level type.Answer whether a provider for external annotations is associated with this binary type.Answer the receiver's fields or null if the array is empty.char[]
Answer the receiver's ClassSignature, which describes the type parameters, super class, and super interfaces as specified in section "4.7.9.1 Signatures" of the Java SE 8 VM spec.char[][]
Answer the resolved names of the receiver's interfaces in the class file format as specified in section 4.2 of the Java 2 VM spec or null if the array is empty.Answer the receiver's nested types or null if the array is empty.Answer the receiver's methods or null if the array is empty.char[][][]
Answer the list of missing type names which were referenced from the problem classfile.char[]
Answer the module to which this type belongs.char[]
getName()
Answer the resolved name of the type in the class file format as specified in section 4.2 of the Java 2 VM spec.default char[][]
Answer the unresolved names of the receiver's permitted sub types or null if the array is empty.Answer the receiver's record components or null if the array is empty.char[]
Answer the simple name of the type in the class file.char[]
Answer the resolved name of the receiver's superclass in the class file format as specified in section 4.2 of the Java 2 VM spec or null if it does not have one.long
Answer the tagbits set according to the bits for annotations.Answer the runtime visible and invisible type annotations for this type or null if none.default URI
getURI()
boolean
Answer true if the receiver is an anonymous class.boolean
isLocal()
Answer true if the receiver is a local class.boolean
isMember()
Answer true if the receiver is a member class.boolean
isRecord()
Answer true if the receiver is a record.char[]
Answer the source file attribute, or null if none.Methods inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.env.IDependent
getFileName
Methods inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.env.IGenericType
getModifiers, isBinaryType
-
Field Details
-
NoInterface
static final char[][] NoInterface -
NoNestedType
-
NoField
-
NoMethod
-
-
Method Details
-
getAnnotations
IBinaryAnnotation[] getAnnotations()Answer the runtime visible and invisible annotations for this type or null if none. -
getTypeAnnotations
IBinaryTypeAnnotation[] getTypeAnnotations()Answer the runtime visible and invisible type annotations for this type or null if none. -
getEnclosingMethod
char[] getEnclosingMethod()Answer the enclosing method (including method selector and method descriptor), or null if none. For example, "foo()Ljava/lang/Object;V" -
getEnclosingTypeName
char[] getEnclosingTypeName()Answer the resolved name of the enclosing type in the class file format as specified in section 4.2 of the Java 2 VM spec or null if the receiver is a top level type. For example, java.lang.String is java/lang/String. -
getFields
IBinaryField[] getFields()Answer the receiver's fields or null if the array is empty. -
getRecordComponents
IRecordComponent[] getRecordComponents()Answer the receiver's record components or null if the array is empty. -
getModule
char[] getModule()Answer the module to which this type belongs.null
if the type is associated to the unnamed module.- Returns:
- the module name or
null
-
getGenericSignature
char[] getGenericSignature()Answer the receiver's ClassSignature, which describes the type parameters, super class, and super interfaces as specified in section "4.7.9.1 Signatures" of the Java SE 8 VM spec. Returns null if none.- Returns:
- the receiver's signature, null if none
-
getInterfaceNames
char[][] getInterfaceNames()Answer the resolved names of the receiver's interfaces in the class file format as specified in section 4.2 of the Java 2 VM spec or null if the array is empty. For example, java.lang.String is java/lang/String. -
getPermittedSubtypeNames
default char[][] getPermittedSubtypeNames()Answer the unresolved names of the receiver's permitted sub types or null if the array is empty. A name is a simple name or a qualified, dot separated name. For example, Hashtable or java.util.Hashtable. -
getMemberTypes
IBinaryNestedType[] getMemberTypes()Answer the receiver's nested types or null if the array is empty. This nested type info is extracted from the inner class attributes. Ask the name environment to find a member type using its compound name. -
getMethods
IBinaryMethod[] getMethods()Answer the receiver's methods or null if the array is empty. -
getMissingTypeNames
char[][][] getMissingTypeNames()Answer the list of missing type names which were referenced from the problem classfile. This list is encoded via an extra attribute. -
getName
char[] getName()Answer the resolved name of the type in the class file format as specified in section 4.2 of the Java 2 VM spec. For example, java.lang.String is java/lang/String. -
getSourceName
char[] getSourceName()Answer the simple name of the type in the class file. For member A$B, will answer B. For anonymous will answer null. -
getSuperclassName
char[] getSuperclassName()Answer the resolved name of the receiver's superclass in the class file format as specified in section 4.2 of the Java 2 VM spec or null if it does not have one. For example, java.lang.String is java/lang/String. -
getTagBits
long getTagBits()Answer the tagbits set according to the bits for annotations. -
isAnonymous
boolean isAnonymous()Answer true if the receiver is an anonymous class. false otherwise -
isLocal
boolean isLocal()Answer true if the receiver is a local class. false otherwise -
isRecord
boolean isRecord()Answer true if the receiver is a record. false otherwise -
isMember
boolean isMember()Answer true if the receiver is a member class. false otherwise -
sourceFileName
char[] sourceFileName()Answer the source file attribute, or null if none. For example, "String.java" -
enrichWithExternalAnnotationsFor
ITypeAnnotationWalker enrichWithExternalAnnotationsFor(ITypeAnnotationWalker walker, Object member, LookupEnvironment environment) Answer a type annotation walker that takes into consideration also external annotations.- Parameters:
walker
- previous walker, may be empty, otherwise it will be returned unchangedmember
- if either a IBinaryField or a IBinaryMethod is provided, answer a walker specifically for that memberenvironment
- for use by the walker- Returns:
- either a matching walker with data from external annotations or the walker provided via argument 'walker'.
-
getExternalAnnotationStatus
BinaryTypeBinding.ExternalAnnotationStatus getExternalAnnotationStatus()Answer whether a provider for external annotations is associated with this binary type. -
getURI
-