Spec-Zone.ru › Kotlin 1.6

ContractBuilder

kotlin-stdlib / kotlin.contracts / ContractBuilder
Требования к платформе и версии: JVM (1.3), JS (1.3), Native (1.3)
@ExperimentalContracts interface ContractBuilder

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

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

См. также

contract

Функции

Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

callsInPlace

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

abstract fun <R> callsInPlace(
    lambda: Function<R>, 
    kind: InvocationKind = InvocationKind.UNKNOWN
): CallsInPlace
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

returns

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

abstract fun returns(): Returns

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

abstract fun returns(value: Any?): Returns
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

returnsNotNull

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

abstract fun returnsNotNull(): ReturnsNotNull

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

Spec-Zone.ru

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