public class IndexBinaryType extends java.lang.Object implements IBinaryType
IBinaryType that reads all its content from the indexNoField, NoInterface, NoMethod, NoNestedTypeJAR_FILE_ENTRY_SEPARATOR| Constructor and Description |
|---|
IndexBinaryType(TypeRef type,
char[] indexPath) |
| Modifier and Type | Method and Description |
|---|---|
static IBinaryAnnotation |
createBinaryAnnotation(NdAnnotation ndAnnotation) |
static IBinaryField |
createBinaryField(NdVariable ndVariable) |
ITypeAnnotationWalker |
enrichWithExternalAnnotationsFor(ITypeAnnotationWalker walker,
java.lang.Object member,
LookupEnvironment environment)
Answer a type annotation walker that takes into consideration also external annotations.
|
boolean |
exists() |
IBinaryAnnotation[] |
getAnnotations()
Answer the runtime visible and invisible annotations for this type or null if none.
|
char[] |
getEnclosingMethod()
Answer the enclosing method (including method selector and method descriptor), or
null if none.
|
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.
|
BinaryTypeBinding.ExternalAnnotationStatus |
getExternalAnnotationStatus()
Answer whether a provider for external annotations is associated with this binary type.
|
IBinaryField[] |
getFields()
Answer the receiver's fields or null if the array is empty.
|
char[] |
getFileName()
Answer the file name which defines the type.
|
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.
|
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.
|
IBinaryNestedType[] |
getMemberTypes()
Answer the receiver's nested types or null if the array is empty.
|
IBinaryMethod[] |
getMethods()
Answer the receiver's methods or null if the array is empty.
|
char[][][] |
getMissingTypeNames()
Answer the list of missing type names which were referenced from
the problem classfile.
|
int |
getModifiers()
Answer an int whose bits are set according the access constants
defined by the VM spec.
|
char[] |
getModule()
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.
|
char[] |
getSourceName()
Answer the simple name of the type in the class file.
|
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.
|
long |
getTagBits()
Answer the tagbits set according to the bits for annotations.
|
IBinaryTypeAnnotation[] |
getTypeAnnotations()
Answer the runtime visible and invisible type annotations for this type or null if none.
|
void |
initSimpleAttributes() |
boolean |
isAnonymous()
Answer true if the receiver is an anonymous class.
|
boolean |
isBinaryType()
Answer whether the receiver contains the resolved binary form
or the unresolved source form of the type.
|
boolean |
isLocal()
Answer true if the receiver is a local class.
|
boolean |
isMember()
Answer true if the receiver is a member class.
|
char[] |
sourceFileName()
Answer the source file attribute, or null if none.
|
public IndexBinaryType(TypeRef type, char[] indexPath)
public boolean exists()
public int getModifiers()
IGenericTypegetModifiers in interface IGenericTypepublic boolean isBinaryType()
IGenericTypeisBinaryType in interface IGenericTypepublic char[] getFileName()
IDependentgetFileName in interface IDependentpublic IBinaryAnnotation[] getAnnotations()
IBinaryTypegetAnnotations in interface IBinaryTypepublic IBinaryTypeAnnotation[] getTypeAnnotations()
IBinaryTypegetTypeAnnotations in interface IBinaryTypepublic char[] getEnclosingMethod()
IBinaryTypegetEnclosingMethod in interface IBinaryTypepublic char[] getEnclosingTypeName()
IBinaryTypegetEnclosingTypeName in interface IBinaryTypepublic IBinaryField[] getFields()
IBinaryTypegetFields in interface IBinaryTypepublic char[] getGenericSignature()
IBinaryTypegetGenericSignature in interface IBinaryTypepublic char[][] getInterfaceNames()
IBinaryTypegetInterfaceNames in interface IBinaryTypepublic IBinaryNestedType[] getMemberTypes()
IBinaryTypegetMemberTypes in interface IBinaryTypepublic IBinaryMethod[] getMethods()
IBinaryTypegetMethods in interface IBinaryTypepublic char[][][] getMissingTypeNames()
IBinaryTypegetMissingTypeNames in interface IBinaryTypepublic char[] getName()
IBinaryTypegetName in interface IBinaryTypepublic char[] getSourceName()
IBinaryTypegetSourceName in interface IBinaryTypepublic char[] getSuperclassName()
IBinaryTypegetSuperclassName in interface IBinaryTypepublic long getTagBits()
IBinaryTypegetTagBits in interface IBinaryTypepublic boolean isAnonymous()
IBinaryTypeisAnonymous in interface IBinaryTypepublic boolean isLocal()
IBinaryTypeisLocal in interface IBinaryTypepublic boolean isMember()
IBinaryTypeisMember in interface IBinaryTypepublic char[] sourceFileName()
IBinaryTypesourceFileName in interface IBinaryTypepublic ITypeAnnotationWalker enrichWithExternalAnnotationsFor(ITypeAnnotationWalker walker, java.lang.Object member, LookupEnvironment environment)
IBinaryTypeenrichWithExternalAnnotationsFor in interface IBinaryTypewalker - 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 walkerpublic static IBinaryField createBinaryField(NdVariable ndVariable)
public static IBinaryAnnotation createBinaryAnnotation(NdAnnotation ndAnnotation)
public void initSimpleAttributes()
public BinaryTypeBinding.ExternalAnnotationStatus getExternalAnnotationStatus()
IBinaryTypegetExternalAnnotationStatus in interface IBinaryTypepublic char[] getModule()
IBinaryTypenull if the type is associated to the unnamed module.getModule in interface IBinaryTypenull