Keyword phrases and employees. Here tokens become keyword in modifier email lists of conditions and that can be utilized for identifiers in other contexts:

Intense key

The following tokens are always translated as keyword combinations and can’t be used as identifiers:

class declares a class

create begins a do/while cycle (trap with postcondition)

else identifies the part of an if concept which is accomplished as soon as the disease happens to be bogus

bogus specifies the ‘false’ importance of the Boolean kind

determine the object being iterated in a for hook

is employed as an infix operator to test that an advantage is associated to a variety, a collection or another entity that identifies the ‘contains’ approach

is employed in whenever expression for a similar reason

spots a kind quantity as contravariant

can be used as a driver to check that a value doesn’t fit in with a range, a collection or another enterprise that specifies the ‘contains’ method

is used in once construction for a similar goal

screen reports a software

can be used in as soon as construction for the very same mission

can be used in as soon as expressions for similar mission

nothing try a steady stage an item mention which doesn’t point to any object

genuine points out the ‘true’ worth of the Boolean type

typealias declares a kind alias

typeof restricted to upcoming incorporate

val declares a read-only belongings or hometown varying

var reports a mutable land or local varying

when begins an once appearance (executes various offered limbs)

while begins a while program (circle with prerequisite)

Smooth keyword

Below tokens work as keyword combinations through the context while appropriate and may be utilized for identifiers in other contexts:

dynamic references an active input Kotlin/JS laws

appreciate on your type key term declares an inline type

Modifier keyword

real denotes a platform-specific implementation in multiplatform jobs

theoretical spots a category or affiliate as theoretical

annotation reports an annotation lessons

partner declares a spouse item

const marks a residential property as a compile-time consistent

enum reports an enumeration

count mark a testimony as platform-specific, expecting a setup in program segments.

outside scars a statement as executed not in Kotlin (accessible through JNI or in JavaScript)

infix let contacting a purpose in infix writing

internal allows discussing the outside course example from a nested course

internal spots a testimony as visible in the current section

out markings a sort quantity as covariant

supersede scars enrolled as a supersede of a superclass associate

open public scratches an announcement as apparent anyplace

reified spots a sort quantity of an inline function as obtainable at runtime

sealed declares a closed course (a course with restricted subclassing)

suspend marks a features or lambda as suspending (usable as a coroutine)

tailrec spots a function as tail-recursive (letting the compiler to change recursion with version)

Special identifiers

This identifiers is defined because of the compiler in particular contexts and can also be used as typical identifiers various other contexts:

discipline is used inside real estate accessor to mention into supporting area of house

Employees and specific signs

Kotlin allows the next providers and special emblems:

&& , || , ! – rational ‘and’, ‘or’, ‘not’ workers (for bitwise activity, need related infix performance)

== , != – equality providers (converted to messages of equals() for non-primitive type)

, > , , >= – assessment operators (interpreted to phone calls of compareTo() for non-primitive varieties)

[ , ] – found gain access to operator (equated to phone calls of get and set )

?. works a secure phone call (telephone calls an approach or accesses a home if radio are non-null)

?: will take the right-hand worth if left-hand advantage try null (the elvis agent)

: distinguishes a name from a kind in declarations

? represents a type as nullable

distinguishes the boundaries and body of a lambda expression

distinguishes the variables and generate kinds testimony in a function type

distinguishes the situation and the entire body of an once term department

presents or references a trap label

introduces or recommendations a lambda name

; stands between a number of statements for a passing fancy range

$ records a varying or appearance in a chain layout

replacements an untouched vardeenhet in a lambda phrase

substitutes an untouched vardeenhet in a destructuring resolution