When

fun <R> When(cond: T, result: Expression<R>): ValueCaseWhen<T, R>

Adds a WHEN clause that compares the case value against a literal condition.

Return

A ValueCaseWhen instance for method chaining

Parameters

R

The return type of the result expression

cond

The literal value to compare against

result

The expression to return if the condition matches


fun <R> When(cond: Expression<T>, result: Expression<R>): ValueCaseWhen<T, R>

Adds a WHEN clause that compares the case value against an expression condition.

Return

A ValueCaseWhen instance for method chaining

Parameters

R

The return type of the result expression

cond

The expression to compare against

result

The expression to return if the condition matches


fun <R> When(cond: Expression<T>, result: R, resultType: IColumnType<R & Any>? = null): ValueCaseWhen<T, R>

Adds a WHEN clause that compares the case value against an expression condition with a literal result.

Return

A ValueCaseWhen instance for method chaining

Parameters

R

The return type of the result value

cond

The expression to compare against

result

The literal value to return if the condition matches

resultType

Optional column type for the result value


fun <R> When(cond: T, result: R, resultType: IColumnType<R & Any>? = null): ValueCaseWhen<T, R>

Adds a WHEN clause that compares the case value against a literal condition with a literal result.

Return

A ValueCaseWhen instance for method chaining

Parameters

R

The return type of the result value

cond

The literal value to compare against

result

The literal value to return if the condition matches

resultType

Optional column type for the result value