Interface ResolvedRecordDeclaration

All Superinterfaces:
AssociableToAST, HasAccessSpecifier, ResolvedDeclaration, ResolvedReferenceTypeDeclaration, ResolvedTypeDeclaration, ResolvedTypeParametrizable
All Known Implementing Classes:
JavaParserRecordDeclaration, JavassistRecordDeclaration, ReflectionRecordDeclaration

public interface ResolvedRecordDeclaration extends ResolvedReferenceTypeDeclaration, ResolvedTypeParametrizable, HasAccessSpecifier
Declaration of a Record (not an interface or an enum). Note that it can be associated to a Node AST because anonymous class declarations return an incompatible node type, compared to classic class declarations.
  • Method Details

    • isRecord

      default boolean isRecord()
      Description copied from interface: ResolvedTypeDeclaration
      Is this the declaration of a record class?
      Specified by:
      isRecord in interface ResolvedTypeDeclaration
    • asRecord

      default ResolvedRecordDeclaration asRecord()
      Description copied from interface: ResolvedTypeDeclaration
      Return this as a RecordDeclaration or throw UnsupportedOperationException.
      Specified by:
      asRecord in interface ResolvedTypeDeclaration
    • getSuperClass

      This is a ReferenceTypeUsage because it could contain type typeParametersValues. For example: class A extends B<Integer, String>.

      Note that only the Object class should not have a superclass and therefore return empty.

    • getInterfaces

      List<ResolvedReferenceType> getInterfaces()
      Return all the interfaces implemented directly by this class. It does not include the interfaces implemented by superclasses or extended by the interfaces implemented.
    • getAllSuperClasses

      List<ResolvedReferenceType> getAllSuperClasses()
      Get all superclasses, with all the type typeParametersValues expressed as functions of the type typeParametersValues of this declaration.
    • getAllInterfaces

      List<ResolvedReferenceType> getAllInterfaces()
      Return all the interfaces implemented by this class, either directly or indirectly, including the interfaces extended by interfaces it implements.

      Get all interfaces, with all the type typeParametersValues expressed as functions of the type typeParametersValues of this declaration.

    • getConstructors

      List of constructors available for the class. This list should also include the default constructor.
      Specified by:
      getConstructors in interface ResolvedReferenceTypeDeclaration