Class ClassType

All Implemented Interfaces:
ITypeParameterizedMember
Direct Known Subclasses:
AsmClass, ParameterizedClass, RawClass

public abstract class ClassType extends ReferenceType implements ITypeParameterizedMember
Created by covers1624 on 21/2/22.
  • Field Details

  • Constructor Details

    • ClassType

      public ClassType()
  • Method Details

    • getSuperClass

      public abstract ClassType getSuperClass()
    • getInterfaces

      public abstract List<ClassType> getInterfaces()
    • getNestedClasses

      public abstract List<ClassType> getNestedClasses()
    • getFields

      public abstract List<Field> getFields()
    • getMethods

      public abstract List<Method> getMethods()
      Overrides:
      getMethods in class ReferenceType
    • getDeclType

      public abstract ClassType.DeclType getDeclType()
    • getPackage

      public abstract String getPackage()
    • getAccessFlags

      public abstract EnumBitSet<AccessFlag> getAccessFlags()
    • getEnclosingClass

      public abstract Optional<ClassType> getEnclosingClass()
    • getEnclosingMethod

      public abstract Optional<Method> getEnclosingMethod()
    • getAnnotationSupplier

      public AnnotationSupplier getAnnotationSupplier()
    • getAnnotationTargets

      public List<ElementType> getAnnotationTargets()
    • getDescriptor

      public abstract org.objectweb.asm.Type getDescriptor()
    • getDeclaration

      public abstract ClassType getDeclaration()
    • asRaw

      public abstract ClassType asRaw()
    • getClassVersion

      public net.covers1624.quack.util.JavaVersion getClassVersion()
    • isInterface

      public final boolean isInterface()
    • isStatic

      public final boolean isStatic()
    • isFinal

      public final boolean isFinal()
    • isEnum

      public final boolean isEnum()
    • isRecord

      public final boolean isRecord()
    • isSynthetic

      public final boolean isSynthetic()
    • getPermittedSubclasses

      public List<ClassType> getPermittedSubclasses()
    • getRecordComponents

      public List<Field> getRecordComponents()
    • getTypeResolver

      public TypeResolver getTypeResolver()
    • getSuperType

      public ReferenceType getSuperType()
      Specified by:
      getSuperType in class ReferenceType
    • getDirectSuperTypes

      public net.covers1624.quack.collection.FastStream<ClassType> getDirectSuperTypes()
      Overrides:
      getDirectSuperTypes in class ReferenceType
    • resolveField

      @Nullable public @Nullable Field resolveField(String name, org.objectweb.asm.Type desc)
      Overrides:
      resolveField in class ReferenceType
    • resolveMethod

      @Nullable public @Nullable Method resolveMethod(String name, org.objectweb.asm.Type desc)
      Overrides:
      resolveMethod in class ReferenceType
    • findConstant

      @Nullable public @Nullable Field findConstant(Object value, boolean isStatic)
    • getFunctionalInterfaceMethod

      @Nullable public @Nullable Method getFunctionalInterfaceMethod()
      Overrides:
      getFunctionalInterfaceMethod in class ReferenceType
    • mentions

      public boolean mentions(ReferenceType type)
      Overrides:
      mentions in class ReferenceType
    • getTopLevelClass

      public ClassType getTopLevelClass()
    • toString

      public String toString()
      Overrides:
      toString in class Object