public abstract class ClassType extends ReferenceType implements ITypeParameterizedMember
| Modifier and Type | Class and Description |
|---|---|
static class |
ClassType.DeclType |
| Modifier and Type | Field and Description |
|---|---|
protected java.util.function.Supplier<java.util.Map<java.lang.String,Field>> |
fieldsLookup |
protected java.util.function.Supplier<java.util.Map<java.lang.String,Method>> |
methodsLookup |
| Constructor and Description |
|---|
ClassType() |
| Modifier and Type | Method and Description |
|---|---|
abstract ClassType |
asRaw() |
@Nullable Field |
findConstant(java.lang.Object value,
boolean isStatic) |
abstract EnumBitSet<AccessFlag> |
getAccessFlags() |
AnnotationSupplier |
getAnnotationSupplier() |
java.util.List<java.lang.annotation.ElementType> |
getAnnotationTargets() |
net.covers1624.quack.util.JavaVersion |
getClassVersion() |
abstract ClassType |
getDeclaration() |
abstract ClassType.DeclType |
getDeclType() |
abstract org.objectweb.asm.Type |
getDescriptor() |
net.covers1624.quack.collection.FastStream<ClassType> |
getDirectSuperTypes() |
abstract java.util.Optional<ClassType> |
getEnclosingClass() |
abstract java.util.Optional<Method> |
getEnclosingMethod() |
abstract java.util.List<Field> |
getFields() |
@Nullable Method |
getFunctionalInterfaceMethod() |
abstract java.util.List<ClassType> |
getInterfaces() |
abstract java.util.List<Method> |
getMethods() |
abstract java.util.List<ClassType> |
getNestedClasses() |
abstract java.lang.String |
getPackage() |
java.util.List<ClassType> |
getPermittedSubclasses() |
abstract ClassType |
getSuperClass() |
ReferenceType |
getSuperType() |
TypeResolver |
getTypeResolver() |
boolean |
isEnum() |
boolean |
isFinal() |
boolean |
isInterface() |
boolean |
isStatic() |
boolean |
isSynthetic() |
boolean |
mentions(ReferenceType type) |
@Nullable Field |
resolveField(java.lang.String name,
org.objectweb.asm.Type desc) |
@Nullable Method |
resolveMethod(java.lang.String name,
org.objectweb.asm.Type desc) |
@Nullable TypeParameter |
resolveTypeParameter(java.lang.String identifier) |
java.lang.String |
toString() |
getAllMethods, getLowerBound, getUpperBoundgetFullName, getNameclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetTypeParameters, hasTypeParametersprotected final java.util.function.Supplier<java.util.Map<java.lang.String,Field>> fieldsLookup
protected final java.util.function.Supplier<java.util.Map<java.lang.String,Method>> methodsLookup
public abstract ClassType getSuperClass()
public abstract java.util.List<ClassType> getInterfaces()
public abstract java.util.List<ClassType> getNestedClasses()
public abstract java.util.List<Field> getFields()
public abstract java.util.List<Method> getMethods()
getMethods in class ReferenceTypepublic abstract ClassType.DeclType getDeclType()
public abstract java.lang.String getPackage()
public abstract EnumBitSet<AccessFlag> getAccessFlags()
public abstract java.util.Optional<ClassType> getEnclosingClass()
public abstract java.util.Optional<Method> getEnclosingMethod()
public AnnotationSupplier getAnnotationSupplier()
public java.util.List<java.lang.annotation.ElementType> getAnnotationTargets()
public abstract org.objectweb.asm.Type getDescriptor()
public abstract ClassType getDeclaration()
public abstract ClassType asRaw()
public net.covers1624.quack.util.JavaVersion getClassVersion()
public final boolean isInterface()
public final boolean isStatic()
public final boolean isFinal()
public final boolean isEnum()
public final boolean isSynthetic()
public java.util.List<ClassType> getPermittedSubclasses()
public TypeResolver getTypeResolver()
@Nullable public @Nullable TypeParameter resolveTypeParameter(java.lang.String identifier)
resolveTypeParameter in interface ITypeParameterizedMemberpublic ReferenceType getSuperType()
getSuperType in class ReferenceTypepublic net.covers1624.quack.collection.FastStream<ClassType> getDirectSuperTypes()
getDirectSuperTypes in class ReferenceType@Nullable public @Nullable Field resolveField(java.lang.String name, org.objectweb.asm.Type desc)
resolveField in class ReferenceType@Nullable public @Nullable Method resolveMethod(java.lang.String name, org.objectweb.asm.Type desc)
resolveMethod in class ReferenceType@Nullable public @Nullable Field findConstant(java.lang.Object value, boolean isStatic)
@Nullable public @Nullable Method getFunctionalInterfaceMethod()
getFunctionalInterfaceMethod in class ReferenceTypepublic boolean mentions(ReferenceType type)
mentions in class ReferenceTypepublic java.lang.String toString()
toString in class java.lang.Object