Any other applicable expression ( Expr) The resulting condition is an equality check of the form boundValue = Expr.
The resulting condition is a containment check expression of the form boundValue in Expr or boundValue !in Expr.
Contains test condition: containment operator followed by an expression ( in Expr or !in Expr).
The resulting condition is a type check expression of the form boundValue is T or boundValue !is T.
Type test condition: type checking operator followed by a type ( is T or !is T).
In fact, it supports four different condition forms: When expression with bound value (the form where the expression enclosed in parentheses after the when keyword is present) is similar to the form without bound value, but uses a different syntax and semantics for conditions.
Asynchronous programming with coroutinesĮxpressions Glossary CSB Control structure body Introduction.
kotlin.OverloadResolutionByLambdaReturnType.
Named and anonymous function declarations.
Finding optimal constraint system solution.
Preliminary analysis and k i l l D a t a F l o w \operatorname k i l l D a t a F l o w.
Performing analyses on the control-flow graph.
kotlin.Nothing and its influence on the CFG.
Bidirectional resolution for callable calls.
Resolving callable references not used as arguments to a call.
Using lambda return type to refine function applicability.
Choosing the most specific candidate from the overload candidate set.
Determining function applicability for a specific call.
Call with an explicit super-form receiver.
Type-checking and containment-checking expressions.