Keyword and providers. The next tokens are invariably translated as keyword combinations and should not be used as identifiers

Solid keywords and phrases

school reports a class

does starts a do/while hook (trap with postcondition)

otherwise identifies the part of an if appearance and that is performed if the issue are false

bogus specifies the ‘false’ property value the Boolean kinds

points out the thing getting iterated in a towards cycle

is utilized as an infix manager to evaluate that a worth is associated to a range, a selection and other entity that specifies the ‘contains’ approach

is employed in as soon as expression for the same intent

spots a kind parameter as contravariant

can be used as an user to check out that an advantages will not are members of a variety, a group and other entity that describes the ‘contains’ process

is utilized in if expressions for the same objective

interface reports a program

can be used in whenever expression for similar mission

is employed in when expression for similar goal

nothing are a steady representing an object mention that doesn’t point to any thing

correct points out the ‘true’ valuation of the Boolean means

typealias reports a type alias

typeof legit local hookup sites reserved for long-term make use of

val declares a read-only property or hometown varying

var declares a mutable homes or local adjustable

when starts a when concept (executes on the list of offered limbs)

while starts quite a while loop (loop with prerequisite)

Plush keyword combinations

Listed here tokens act as combination of keywords in the setting while they are appropriate and can also be used as identifiers various other contexts:

vibrant mention an active type in Kotlin/JS signal

advantage because of the type research reports an inline class

Modifier search phrases

The below tokens work as keywords and phrases in modifier databases of conditions and will be utilized for identifiers various other contexts:

genuine means a platform-specific execution in multiplatform work

abstract marks a category or affiliate as theoretical

annotation reports an annotation school

spouse declares a friend item

const spots home as a compile-time continual

enum reports an enumeration

imagine mark a declaration as platform-specific, planning on a setup in program segments.

exterior mark an announcement as used not just in Kotlin (accessible through JNI or in JavaScript)

infix allows phoning a function in infix notation

internal helps referring to the outer type case from a nested course

interior markings an announcement as visible in this section

out markings a type quantity as covariant

supersede scars an associate as a supersede of a superclass member

people spots a statement as visible just about anywhere

reified scars a sort parameter of an inline be obtainable at runtime

covered declares a sealed class (a category with limited subclassing)

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

tailrec mark a be tail-recursive (permitting the compiler to displace recursion with iteration)

Specialized identifiers

The subsequent identifiers tends to be described by your compiler in certain contexts might be used as normal identifiers in other contexts:

discipline is used inside a home accessor to refer on the supporting subject associated with residential property

Providers and specific symbols

Kotlin allows the subsequent workers and particular signs:

&& , || , ! – sensible ‘and’, ‘or’, ‘not’ operators (for bitwise process, utilize corresponding infix operates)

== , != – equality employees (render to calls of equals() for non-primitive varieties)

, > , , >= – assessment providers (interpreted to calls of compareTo() for non-primitive type)

[ , ] – listed connection driver (translated to contacts of take along with )

?. carries out a good label (refers to a method or accesses a house when individual are non-null)

?: will take the right-hand advantages in the event that left-hand worth is actually null (the elvis agent)

: split a reputation from a type in declarations

? marks a type as nullable

distinguishes the criteria and the body of a lambda concept

distinguishes the boundaries and repay kinds announcement in a features form

classify the problem and the entire body of an once expression branch

highlights or mention a cycle label

introduces or mention a lambda tag

; separates multiple records on a single line

$ mention a variable or phrase in a series format

replacements an abandoned quantity in a lambda appearance

replacements an unused factor in a destructuring resolution