public class LibraryClass extends SimpleFeatureNamedProcessable implements Clazz
Clazz is a compact representation of the essential data in a Java class.| Modifier and Type | Field and Description |
|---|---|
LibraryField[] |
fields |
Clazz[] |
interfaceClasses
An extra field pointing to the interfaces of this class.
|
java.lang.String[] |
interfaceNames |
KotlinMetadata |
kotlinMetadata |
LibraryMethod[] |
methods |
int |
subClassCount |
Clazz[] |
subClasses
An extra field pointing to the subclasses of this class.
|
Clazz |
superClass
An extra field pointing to the superclass of this class.
|
java.lang.String |
superClassName |
java.lang.String |
thisClassName |
int |
u2accessFlags |
extraFeatureNames, featureNameprocessingFlags, processingInfo| Constructor and Description |
|---|
LibraryClass()
Creates an empty LibraryClass.
|
LibraryClass(int u2accessFlags,
java.lang.String thisClassName,
java.lang.String superClassName)
Creates an initialized LibraryClass
|
LibraryClass(int u2accessFlags,
java.lang.String thisClassName,
java.lang.String superClassName,
KotlinMetadata kotlinMetadata)
Creates an initialized LibraryClass
|
LibraryClass(int u2accessFlags,
java.lang.String thisClassName,
java.lang.String superClassName,
java.lang.String[] interfaceNames,
Clazz[] interfaceClasses,
int subClassCount,
Clazz[] subClasses,
LibraryField[] fields,
LibraryMethod[] methods,
KotlinMetadata kotlinMetadata)
Creates an initialized LibraryClass
|
| Modifier and Type | Method and Description |
|---|---|
void |
accept(ClassVisitor classVisitor)
Accepts the given class visitor.
|
void |
addSubClass(Clazz clazz)
Notifies this Clazz that it is being subclassed by another class.
|
void |
attributeAccept(java.lang.String name,
AttributeVisitor attributeVisitor)
Lets the given attribute info visitor visit the specified attribute.
|
void |
attributesAccept(AttributeVisitor attributeVisitor)
Lets the given attribute info visitor visit all attributes of this class.
|
void |
constantPoolEntriesAccept(ConstantVisitor constantVisitor)
Lets the given constant pool entry visitor visit all constant pool entries
of this class.
|
void |
constantPoolEntryAccept(int index,
ConstantVisitor constantVisitor)
Lets the given constant pool entry visitor visit the constant pool entry
at the specified index.
|
boolean |
extends_(Clazz clazz)
Returns whether this class extends the given class.
|
boolean |
extends_(java.lang.String className)
Returns whether this class extends the specified class.
|
boolean |
extendsOrImplements(Clazz clazz)
Returns whether this class implements the given class.
|
boolean |
extendsOrImplements(java.lang.String className)
Returns whether this class implements the specified class.
|
void |
fieldAccept(java.lang.String name,
java.lang.String descriptor,
MemberVisitor memberVisitor)
Lets the given member info visitor visit the specified field.
|
void |
fieldsAccept(MemberVisitor memberVisitor)
Lets the given member info visitor visit all fields of this class.
|
Field |
findField(java.lang.String name,
java.lang.String descriptor)
Returns the field with the given name and descriptor.
|
Method |
findMethod(java.lang.String name,
java.lang.String descriptor)
Returns the method with the given name and descriptor.
|
int |
getAccessFlags()
Returns the access flags of this class.
|
java.lang.String |
getClassName(int constantIndex)
Returns the class name of ClassConstant at the specified index.
|
Clazz |
getInterface(int index)
Returns the interface at the given index.
|
int |
getInterfaceCount()
Returns the number of interfaces that this class implements.
|
java.lang.String |
getInterfaceName(int index)
Returns the full internal name of the interface at the given index of
this class.
|
java.lang.String |
getModuleName(int constantIndex)
Returns the name of the ModuleConstant at the specified index.
|
java.lang.String |
getName()
Returns the full internal name of this class.
|
java.lang.String |
getName(int constantIndex)
Returns the name of the NameAndTypeConstant at the specified index.
|
java.lang.String |
getPackageName(int constantIndex)
Returns the name of the PackageConstant at the specified index.
|
java.lang.String |
getRefClassName(int constantIndex)
Returns the class name of the RefConstant at the specified index.
|
java.lang.String |
getRefName(int constantIndex)
Returns the name of the RefConstant at the specified index.
|
java.lang.String |
getRefType(int constantIndex)
Returns the type of the RefConstant at the specified index.
|
java.lang.String |
getString(int constantIndex)
Returns the String value of the Utf8Constant at the specified index.
|
java.lang.String |
getStringString(int constantIndex)
Returns the String value of the StringConstant at the specified index.
|
Clazz |
getSuperClass()
Returns the super class of this class.
|
java.lang.String |
getSuperName()
Returns the full internal name of the super class of this class, or
null if this class represents java.lang.Object.
|
int |
getTag(int constantIndex)
Returns the tag value of the Constant at the specified index.
|
java.lang.String |
getType(int constantIndex)
Returns the type of the NameAndTypeConstant at the specified index.
|
void |
hierarchyAccept(boolean visitThisClass,
boolean visitSuperClass,
boolean visitInterfaces,
boolean visitSubclasses,
ClassVisitor classVisitor)
Accepts the given class visitor in the class hierarchy.
|
void |
interfaceConstantsAccept(ConstantVisitor constantVisitor)
Lets the given constant pool entry visitor visit the class constant pool
entries for all interfaces of this class.
|
void |
interfacesAccept(ClassVisitor classVisitor)
Lets the given class visitor visit all known direct interfaces.
|
void |
kotlinMetadataAccept(KotlinMetadataVisitor kotlinMetadataVisitor)
Lets the given Kotlin metadata visitor visit the metadata of this class.
|
boolean |
mayHaveImplementations(Method method)
Returns whether the given method may possibly have implementing or
overriding methods down the class hierarchy.
|
void |
methodAccept(java.lang.String name,
java.lang.String descriptor,
MemberVisitor memberVisitor)
Lets the given member info visitor visit the specified method.
|
void |
methodsAccept(MemberVisitor memberVisitor)
Lets the given member info visitor visit all methods of this class.
|
void |
removeSubClass(Clazz clazz)
Notifies this Clazz that it is no longer being subclassed by another
class.
|
void |
subclassesAccept(ClassVisitor classVisitor)
Lets the given class visitor visit all known subclasses.
|
void |
superClassAccept(ClassVisitor classVisitor)
Lets the given class visitor visit the superclass, if it is known.
|
void |
superClassConstantAccept(ConstantVisitor constantVisitor)
Lets the given constant pool entry visitor visit the class constant pool
entry of the super class of this class, if there is one.
|
void |
thisClassConstantAccept(ConstantVisitor constantVisitor)
Lets the given constant pool entry visitor visit the class constant pool
entry of this class.
|
java.lang.String |
toString() |
addExtraFeatureName, getExtraFeatureNames, getFeatureName, isInFeature, setFeatureNamegetProcessingFlags, getProcessingInfo, setProcessingFlags, setProcessingInfoclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddExtraFeatureName, getExtraFeatureNames, getFeatureName, isInFeature, setFeatureNamegetProcessingFlags, getProcessingInfo, setProcessingFlags, setProcessingInfopublic int u2accessFlags
public java.lang.String thisClassName
public java.lang.String superClassName
public java.lang.String[] interfaceNames
public LibraryField[] fields
public LibraryMethod[] methods
public KotlinMetadata kotlinMetadata
public Clazz superClass
ClassSuperHierarchyInitializer.public Clazz[] interfaceClasses
ClassSuperHierarchyInitializer.public Clazz[] subClasses
ClassSubHierarchyInitializer.public int subClassCount
public LibraryClass()
public LibraryClass(int u2accessFlags,
java.lang.String thisClassName,
java.lang.String superClassName)
u2accessFlags - access flags for the new class.thisClassName - the fully qualified name of the new class.superClassName - the fully qualified name of the super class.public LibraryClass(int u2accessFlags,
java.lang.String thisClassName,
java.lang.String superClassName,
KotlinMetadata kotlinMetadata)
u2accessFlags - access flags for the new class.thisClassName - the fully qualified name of the new class.superClassName - the fully qualified name of the super class.kotlinMetadata - the metadata attached to this class if it is a Kotlin class.public LibraryClass(int u2accessFlags,
java.lang.String thisClassName,
java.lang.String superClassName,
java.lang.String[] interfaceNames,
Clazz[] interfaceClasses,
int subClassCount,
Clazz[] subClasses,
LibraryField[] fields,
LibraryMethod[] methods,
KotlinMetadata kotlinMetadata)
u2accessFlags - access flags for the new class.thisClassName - the fully qualified name of the new class.superClassName - the fully qualified name of the super class.interfaceNames - the names of the interfaces that are implemented by this class.interfaceClasses - references to the interface classes of the interfaces that are implemented by this class.subClassCount - the number of subclasses of this class.subClasses - references to the subclasses of this class.fields - references to the fields of this class.methods - references to the methods of this class.kotlinMetadata - the metadata attached to this class if it is a Kotlin classpublic int getAccessFlags()
ClazzgetAccessFlags in interface ClazzClassConstantspublic java.lang.String getName()
Clazzpublic java.lang.String getSuperName()
ClazzgetSuperName in interface Clazzpublic int getInterfaceCount()
ClazzgetInterfaceCount in interface Clazzpublic java.lang.String getInterfaceName(int index)
ClazzgetInterfaceName in interface Clazzpublic int getTag(int constantIndex)
Clazzpublic java.lang.String getString(int constantIndex)
Clazzpublic java.lang.String getStringString(int constantIndex)
ClazzgetStringString in interface Clazzpublic java.lang.String getClassName(int constantIndex)
ClazzgetClassName in interface Clazzpublic java.lang.String getName(int constantIndex)
Clazzpublic java.lang.String getType(int constantIndex)
Clazzpublic java.lang.String getRefClassName(int constantIndex)
ClazzgetRefClassName in interface Clazzpublic java.lang.String getRefName(int constantIndex)
ClazzgetRefName in interface Clazzpublic java.lang.String getRefType(int constantIndex)
ClazzgetRefType in interface Clazzpublic java.lang.String getModuleName(int constantIndex)
ClazzgetModuleName in interface Clazzpublic java.lang.String getPackageName(int constantIndex)
ClazzgetPackageName in interface Clazzpublic void addSubClass(Clazz clazz)
ClazzaddSubClass in interface Clazzpublic void removeSubClass(Clazz clazz)
ClazzremoveSubClass in interface Clazzpublic Clazz getSuperClass()
ClazzgetSuperClass in interface Clazzpublic Clazz getInterface(int index)
ClazzgetInterface in interface Clazzpublic boolean extends_(Clazz clazz)
Clazzpublic boolean extends_(java.lang.String className)
Clazzpublic boolean extendsOrImplements(Clazz clazz)
ClazzextendsOrImplements in interface Clazzpublic boolean extendsOrImplements(java.lang.String className)
ClazzextendsOrImplements in interface Clazzpublic Field findField(java.lang.String name, java.lang.String descriptor)
Clazzpublic Method findMethod(java.lang.String name, java.lang.String descriptor)
ClazzfindMethod in interface Clazzname - the method name, or null if it is irrelevant.descriptor - the method descriptor, or null if it is irrelevant.public void accept(ClassVisitor classVisitor)
Clazzpublic void hierarchyAccept(boolean visitThisClass,
boolean visitSuperClass,
boolean visitInterfaces,
boolean visitSubclasses,
ClassVisitor classVisitor)
ClazzhierarchyAccept in interface ClazzvisitThisClass - specifies whether to visit this class.visitSuperClass - specifies whether to visit the super classes.visitInterfaces - specifies whether to visit the interfaces.visitSubclasses - specifies whether to visit the subclasses.classVisitor - the ClassVisitor that will
visit the class hierarchy.public void superClassAccept(ClassVisitor classVisitor)
classVisitor - the ClassVisitor that will visit the
superclass.public void interfacesAccept(ClassVisitor classVisitor)
classVisitor - the ClassVisitor that will visit the
interfaces.public void subclassesAccept(ClassVisitor classVisitor)
ClazzsubclassesAccept in interface ClazzclassVisitor - the ClassVisitor that will visit the
subclasses.public void constantPoolEntriesAccept(ConstantVisitor constantVisitor)
ClazzconstantPoolEntriesAccept in interface Clazzpublic void constantPoolEntryAccept(int index,
ConstantVisitor constantVisitor)
ClazzconstantPoolEntryAccept in interface Clazzpublic void thisClassConstantAccept(ConstantVisitor constantVisitor)
ClazzthisClassConstantAccept in interface Clazzpublic void superClassConstantAccept(ConstantVisitor constantVisitor)
ClazzsuperClassConstantAccept in interface Clazzpublic void interfaceConstantsAccept(ConstantVisitor constantVisitor)
ClazzinterfaceConstantsAccept in interface Clazzpublic void fieldsAccept(MemberVisitor memberVisitor)
ClazzfieldsAccept in interface Clazzpublic void fieldAccept(java.lang.String name,
java.lang.String descriptor,
MemberVisitor memberVisitor)
ClazzfieldAccept in interface Clazzpublic void methodsAccept(MemberVisitor memberVisitor)
ClazzmethodsAccept in interface Clazzpublic void methodAccept(java.lang.String name,
java.lang.String descriptor,
MemberVisitor memberVisitor)
ClazzmethodAccept in interface Clazzpublic boolean mayHaveImplementations(Method method)
ClazzmayHaveImplementations in interface Clazzmethod - the method that may have implementations.public void attributesAccept(AttributeVisitor attributeVisitor)
ClazzattributesAccept in interface Clazzpublic void attributeAccept(java.lang.String name,
AttributeVisitor attributeVisitor)
ClazzattributeAccept in interface Clazzpublic void kotlinMetadataAccept(KotlinMetadataVisitor kotlinMetadataVisitor)
ClazzkotlinMetadataAccept in interface Clazzpublic java.lang.String toString()
toString in class java.lang.Object