Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val JAVA_LANG_RECORD: String = "java.lang.Record"

Functions

Link copied to clipboard
Return this as a AnnotationDeclaration or throw UnsupportedOperationException.
Link copied to clipboard
Return this as a ClassDeclaration or throw UnsupportedOperationException.
Link copied to clipboard
Return this as a EnumDeclaration or throw UnsupportedOperationException.
Link copied to clipboard
Return this as a EnumConstantDeclaration or throw an UnsupportedOperationException
Link copied to clipboard
Return this as a FieldDeclaration or throw an UnsupportedOperationException
Link copied to clipboard
Return this as a InterfaceDeclaration or throw UnsupportedOperationException.
Link copied to clipboard
Return this as a MethodDeclaration or throw an UnsupportedOperationException // FIXME: This is never overridden.
Link copied to clipboard
Return this as a ParameterDeclaration or throw an UnsupportedOperationException
Link copied to clipboard
Return this as a RecordDeclaration or throw UnsupportedOperationException.
Link copied to clipboard
Return this as a TypeDeclaration or throw an UnsupportedOperationException
Link copied to clipboard
Return this as a TypeParameterDeclaration or throw UnsupportedOperationException.
Link copied to clipboard
Return this as a PatternDeclaration or throw an UnsupportedOperationException
Link copied to clipboard
Can we assign instances of the type defined by this declaration to variables having the type defined by the given type?
Link copied to clipboard
Get the ReferenceTypeDeclaration enclosing this declaration.
Link copied to clipboard
Find the closest TypeParameterDeclaration with the given name.
Link copied to clipboard
The list of all the ancestors of the current declaration, direct and indirect.
Link copied to clipboard
Return a list of all fields, either declared in this declaration or inherited.
Link copied to clipboard
abstract fun getAllMethods(): Set<MethodUsage>
Return a list of all the methods declared of this type declaration, either declared or inherited.
Link copied to clipboard
Return a list of all the non static fields, either declared or inherited.
Link copied to clipboard
Return a list of all the static fields, either declared or inherited.
Link copied to clipboard
abstract fun getAncestors(acceptIncompleteList: Boolean): List<ResolvedReferenceType>
Resolves the types of all direct ancestors (i.e., the directly extended class and the directly implemented interfaces) and returns the list of ancestors as a list of resolved reference types.
Link copied to clipboard
abstract fun getClassName(): String
The class(es) wrapping this type.
Link copied to clipboard
Link copied to clipboard
Returns the resolved annotation corresponding to the specified name and declared in this type declaration.
Link copied to clipboard
Return a collection of all annotations declared in this type declaration.
Link copied to clipboard
Return a list of all the fields declared in this type.
Link copied to clipboard
Return a list of all the methods declared in this type declaration.
Link copied to clipboard
Note that the type of the field should be expressed using the type variables of this particular type.
Link copied to clipboard
open fun getId(): String
The ID corresponds most of the type to the qualified name.
Link copied to clipboard
Returns a type declaration for the internal type based on name.
Link copied to clipboard
abstract fun getName(): String
Should return the name or return null if the name is not available.
Link copied to clipboard
abstract fun getPackageName(): String
The package name of the type.
Link copied to clipboard
abstract fun getQualifiedName(): String
The fully qualified name of the type declared.
Link copied to clipboard
The list of type parameters defined on this element.
Link copied to clipboard
Consider only field or inherited field which is not private.
Link copied to clipboard
Return a list of all fields declared and the inherited ones which are not private.
Link copied to clipboard
open fun hasAnnotation(qualifiedName: String): Boolean
Has the type at least one annotation declared or inherited having the specified qualified name?
Link copied to clipboard
abstract fun hasDirectlyAnnotation(qualifiedName: String): Boolean
Has the type at least one annotation declared having the specified qualified name?
Link copied to clipboard
open fun hasField(name: String): Boolean
Has this type a field with the given name?
Link copied to clipboard
open fun hasInternalType(name: String): Boolean
Does this type contain an internal type with the given name?
Link copied to clipboard
open fun hasName(): Boolean
Anonymous classes do not have a name, for example.
Link copied to clipboard
open fun hasVisibleField(name: String): Boolean
Either a declared field or inherited field which is not private.
Link copied to clipboard
Get the list of types defined inside the current type.
Link copied to clipboard
open fun isAnnotation(): Boolean
Is this the declaration of an annotation?
Link copied to clipboard
Is this type declaration corresponding to an anonymous class?
Link copied to clipboard
Does this declaration represent the array length pseudo-field?
Link copied to clipboard
abstract fun isAssignableBy(type: ResolvedType): Boolean
Can we assign instances of the given type to variables having the type defined by this declaration?
Link copied to clipboard
open fun isClass(): Boolean
Is this the declaration of a class?
Link copied to clipboard
open fun isEnum(): Boolean
Is this the declaration of an enum?
Link copied to clipboard
Does this declaration represents an enum constant?
Link copied to clipboard
open fun isField(): Boolean
Does this declaration represents a class field?
Link copied to clipboard
This means that the type has a functional method.
Link copied to clipboard
open fun isGeneric(): Boolean
Link copied to clipboard
Returns true if the specified annotation is inheritable.
Link copied to clipboard
open fun isInterface(): Boolean
Is this the declaration of an interface?
Link copied to clipboard
Link copied to clipboard
We don't make this _ex_plicit in the data representation because that would affect codegen and make everything generate like <T extends Object> instead of <T>
Link copied to clipboard
Link copied to clipboard
open fun isMethod(): Boolean
Does this declaration represents a method?
Link copied to clipboard
open fun isParameter(): Boolean
Does this declaration represents a method parameter?
Link copied to clipboard
open fun isRecord(): Boolean
Is this the declaration of a record class?
Link copied to clipboard
Is this the declaration of a reference type?
Link copied to clipboard
open fun isType(): Boolean
Does this declaration represents a type?
Link copied to clipboard
Is this the declaration of a type parameter?
Link copied to clipboard
Does this declaration represents a pattern declaration?
Link copied to clipboard
open fun isVariable(): Boolean
Does this declaration represents a variable?
Link copied to clipboard
open fun toAst(): Optional<Node>
If the declaration is associated to an AST node return it, otherwise it return empty.
open fun <N : Node?> toAst(clazz: Class<N>): Optional<N>
If the declaration is associated to an AST node and the type matches the expected Class return it, otherwise it returns empty.