Skip to content

KaSymbolLocation

Describes the location where a KaSymbol is declared in code.

Example

package my.pack // TOP_LEVEL

class TopLevelClass { // TOP_LEVEL
  class NestedClass { // CLASS
    fun memberFunction() { // CLASS
      val foo = 4 // LOCAL
    }
  }
}

val topLevelProperty: Int // TOP_LEVEL
  get() = 0 // PROPERTY

fun topLevelFunction() { // TOP_LEVEL
  class LocalClass { // LOCAL
    val memberProperty = 0 // CLASS

    fun memberFunction() { // CLASS
      fun localFunction() {} // LOCAL
    }
  }
}

Entries

TOP_LEVEL

Symbols which are not a part of other symbols.

CLASS

Symbols which are a part of a KaClassSymbol.

PROPERTY

Symbols which are a part of a KaPropertySymbol, such as KaPropertyAccessorSymbol and KaBackingFieldSymbol.

LOCAL

Symbols which are defined directly inside a body.

Companion properties

entries

Returns an immutable kotlin.enums.EnumEntries list containing the constants of this enum type, in the order they're declared.

Companion functions

valueOf

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Throws

kotlin.IllegalArgumentException

if this enum type has no constant with the specified name

values

Returns an array containing the constants of this enum type, in the order they're declared.

This method may be used to iterate over the constants.

The function returns a new instance of the array on every call. The array could be mutated, so working with it may also require defensive copying. Consider using entries property as a more efficient alternative returning an immutable list of enum entries.

Properties

name

val name: String

ordinal

val ordinal: Int