Interface XClass

All Superinterfaces:
AccessibleEntity, AnnotatedObject, Comparable<ClassDescriptor>
All Known Implementing Classes:
ClassInfo

public interface XClass extends Comparable<ClassDescriptor>, AccessibleEntity, AnnotatedObject
Interface for object representing information about a class.
Author:
David Hovemeyer
  • Method Details

    • getSuperclassDescriptor

      @CheckForNull ClassDescriptor getSuperclassDescriptor()
      Get ClassDescriptor of this class's immediate superclass.
      Returns:
      ClassDescriptor of this class's immediate superclass, or null if this class has no immediate superclass
    • getInterfaceDescriptorList

      ClassDescriptor[] getInterfaceDescriptorList()
      Get ClassDescriptors of interfaces directly implemented by this class.
      Returns:
      ClassDescriptors of interfaces directly implemented by this class
    • getImmediateEnclosingClass

      ClassDescriptor getImmediateEnclosingClass()
      Get the ClassDescriptor of the immediate enclosing class, or null if this XClass is not a nested or inner class.
      Returns:
      the ClassDescriptor of the immediate enclosing class, or null if this XClass is not a nested or inner class
    • isInterface

      boolean isInterface()
      Returns:
      true if the class is an interface, false otherwise
    • isAbstract

      boolean isAbstract()
      Returns:
      true if the class is an abstract
    • getSource

      @CheckForNull String getSource()
      Returns:
      the Source attribute
    • getAnnotationDescriptors

      Collection<ClassDescriptor> getAnnotationDescriptors()
      Specified by:
      getAnnotationDescriptors in interface AnnotatedObject
    • getAnnotation

      AnnotationValue getAnnotation(ClassDescriptor desc)
      Specified by:
      getAnnotation in interface AnnotatedObject
    • findMethod

      XMethod findMethod(String methodName, String methodSig, boolean isStatic)
      Find an XMethod matching given parameters.
      Parameters:
      methodName - name of the method
      methodSig - signature of the method
      isStatic - true if the method is static, false if not
      Returns:
      matching XMethod, or null if there is no matching XMethod
    • findMethod

      XMethod findMethod(MethodDescriptor descriptor)
      Find XMethod matching given MethodDescriptor.
      Parameters:
      descriptor - a MethodDescriptor
      Returns:
      matching XMethod, or null if there is no matching method
    • findMatchingMethod

      XMethod findMatchingMethod(MethodDescriptor descriptor)
      Find XMethod matching the name and signature of the supplied method MethodDescriptor. The class descriptor of the argument is ignored.
      Parameters:
      descriptor - a MethodDescriptor
      Returns:
      matching XMethod, or null if there is no matching method
    • findField

      XField findField(String name, String signature, boolean isStatic)
      Find an XField matching given parameters.
      Parameters:
      name - name of the field
      signature - signature of the field
      isStatic - true if field is static, false if not
      Returns:
      XField, or null if there is no matching XField
    • getXFields

      List<? extends XField> getXFields()
    • getXMethods

      List<? extends XMethod> getXMethods()
    • getSourceSignature

      String getSourceSignature()
    • usesConcurrency

      boolean usesConcurrency()
    • hasStubs

      boolean hasStubs()
    • getCalledClassDescriptors

      Set<ClassDescriptor> getCalledClassDescriptors()
      Returns:
      Returns the called class descriptors.