Annotation

abstract class Annotation<S : Symbol.Annotation<S, I>, I : Symbol.Annotation.Instance<S, I>>(val packageName: NameSegments, val classNames: NameSegments) : Symbol.ClassLike(source)

A full representation of an annotation, as opposed to Classifier which just represents the type. Includes all parameters and the ability to constructor Instances for a given set of arguments.

Constructors

Link copied to clipboard
constructor(packageName: NameSegments, classNames: NameSegments)

Types

Link copied to clipboard

A representation of an annotation instance.

Properties

Link copied to clipboard
open override val classNames: NameSegments

The class names of the annotation

Link copied to clipboard
open override val fullName: NameSegments

The fully qualified name of the symbol.

Link copied to clipboard
open override val name: String

The simple name of this symbol. Usually the last segment in its fully qualified name.

Link copied to clipboard
open override val nameSegments: List<String>

The segments of the fully qualified name of this symbol.

Link copied to clipboard
open override val packageName: NameSegments

The package name of the annotation

Link copied to clipboard

All parameters of the annotation

Functions

Link copied to clipboard
Link copied to clipboard
open override fun asString(): String

The fully qualified name as a string.

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
open operator fun plus(segment: String): NameSegments

Resolves segment after this.

open operator override fun plus(other: NameSegments): NameSegments

Resolves other after this.

Link copied to clipboard

Creates an Instance of the annotation by reading an argument for each parameter using producer.

Link copied to clipboard
open fun resolve(vararg segments: String): NameSegments

Resolves segments after this.

Link copied to clipboard
open override fun toString(): String