Permalink
Cannot retrieve contributors at this time
/* | |
* Copyright 2010-2018 JetBrains s.r.o. and Kotlin Programming Language contributors. | |
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. | |
*/ | |
@file:kotlin.jvm.JvmMultifileClass | |
@file:kotlin.jvm.JvmName("PreconditionsKt") | |
package kotlin | |
import kotlin.contracts.contract | |
/** | |
* Throws an [IllegalArgumentException] if the [value] is false. | |
* | |
* @sample samples.misc.Preconditions.failRequireWithLazyMessage | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun require(value: Boolean): Unit { | |
contract { | |
returns() implies value | |
} | |
require(value) { "Failed requirement." } | |
} | |
/** | |
* Throws an [IllegalArgumentException] with the result of calling [lazyMessage] if the [value] is false. | |
* | |
* @sample samples.misc.Preconditions.failRequireWithLazyMessage | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun require(value: Boolean, lazyMessage: () -> Any): Unit { | |
contract { | |
returns() implies value | |
} | |
if (!value) { | |
val message = lazyMessage() | |
throw IllegalArgumentException(message.toString()) | |
} | |
} | |
/** | |
* Throws an [IllegalArgumentException] if the [value] is null. Otherwise returns the not null value. | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun <T : Any> requireNotNull(value: T?): T { | |
contract { | |
returns() implies (value != null) | |
} | |
return requireNotNull(value) { "Required value was null." } | |
} | |
/** | |
* Throws an [IllegalArgumentException] with the result of calling [lazyMessage] if the [value] is null. Otherwise | |
* returns the not null value. | |
* | |
* @sample samples.misc.Preconditions.failRequireNotNullWithLazyMessage | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun <T : Any> requireNotNull(value: T?, lazyMessage: () -> Any): T { | |
contract { | |
returns() implies (value != null) | |
} | |
if (value == null) { | |
val message = lazyMessage() | |
throw IllegalArgumentException(message.toString()) | |
} else { | |
return value | |
} | |
} | |
/** | |
* Throws an [IllegalStateException] if the [value] is false. | |
* | |
* @sample samples.misc.Preconditions.failCheckWithLazyMessage | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun check(value: Boolean): Unit { | |
contract { | |
returns() implies value | |
} | |
check(value) { "Check failed." } | |
} | |
/** | |
* Throws an [IllegalStateException] with the result of calling [lazyMessage] if the [value] is false. | |
* | |
* @sample samples.misc.Preconditions.failCheckWithLazyMessage | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun check(value: Boolean, lazyMessage: () -> Any): Unit { | |
contract { | |
returns() implies value | |
} | |
if (!value) { | |
val message = lazyMessage() | |
throw IllegalStateException(message.toString()) | |
} | |
} | |
/** | |
* Throws an [IllegalStateException] if the [value] is null. Otherwise | |
* returns the not null value. | |
* | |
* @sample samples.misc.Preconditions.failCheckWithLazyMessage | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun <T : Any> checkNotNull(value: T?): T { | |
contract { | |
returns() implies (value != null) | |
} | |
return checkNotNull(value) { "Required value was null." } | |
} | |
/** | |
* Throws an [IllegalStateException] with the result of calling [lazyMessage] if the [value] is null. Otherwise | |
* returns the not null value. | |
* | |
* @sample samples.misc.Preconditions.failCheckWithLazyMessage | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun <T : Any> checkNotNull(value: T?, lazyMessage: () -> Any): T { | |
contract { | |
returns() implies (value != null) | |
} | |
if (value == null) { | |
val message = lazyMessage() | |
throw IllegalStateException(message.toString()) | |
} else { | |
return value | |
} | |
} | |
/** | |
* Throws an [IllegalStateException] with the given [message]. | |
* | |
* @sample samples.misc.Preconditions.failWithError | |
*/ | |
@kotlin.internal.InlineOnly | |
public inline fun error(message: Any): Nothing = throw IllegalStateException(message.toString()) |