Spec-Zone.ru › Kotlin 2

ContractBuilder

kotlin-stdlib/kotlin.contracts/ContractBuilder

Версия Kotlin: 1.3

@ExperimentalContracts
interface ContractBuilder

Предоставляет область видимости, в которой можно использовать функции DSL контрактов, такие как returns, callsInPlace и т. д., чтобы описать контракт функции.

Этот тип используется в качестве типа-получателя лямбда-функции, передаваемой функции contract.

См. также

contract

Функции

callsInPlace

Версия Kotlin: 1.3

abstract fun <R> callsInPlace(lambda: Function<R>, kind: InvocationKind = InvocationKind.UNKNOWN): CallsInPlace

Указывает, что параметр функции lambda вызывается на месте.

holdsIn

Версия Kotlin: 2.2

@ExperimentalExtendedContracts
abstract infix fun <R> Boolean.holdsIn(lambda: Function<R>): HoldsIn

Указывает условие, переданное в качестве аргумента-получателя, которое гарантированно истинно в теле параметра функции lambda.

implies

Версия Kotlin: 2.2

@ExperimentalExtendedContracts
abstract infix fun Boolean.implies(value: ReturnsNotNull)

Указывает эффект, который будет наблюдаться, если условие, переданное в качестве аргумента-получателя, выполняется.

returns

Версия Kotlin: 1.3

abstract fun returns(): Returns

Описывает ситуацию, когда функция завершается нормально, не выбрасывая исключений.

abstract fun returns(value: Any?): Returns

Описывает ситуацию, когда функция завершается нормально с указанным возвращаемым значением.

returnsNotNull

Версия Kotlin: 1.3

abstract fun returnsNotNull(): ReturnsNotNull

Описывает ситуацию, когда функция завершается нормально с любым значением, которое не является null.

returnsResultOf

Версия Kotlin: 2.4

abstract fun <R> returnsResultOf(lambda: Function<R>)

Указывает, что функция возвращает результат вызова параметра функции lambda.

© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.contracts/-contract-builder/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API