OverrideUtils

@API(status = API.Status.EXPERIMENTAL, since = "4.1.0")
object OverrideUtils

Functions

Link copied to clipboard
inline fun <R> callIfOverridesFunction(kClass: KClass<*>, function: () -> R): R?
@JvmName(name = "callIfOverridesFunctionSuspend")
inline fun <R> callIfOverridesFunction(kClass: KClass<*>, function: suspend () -> R): R?
Link copied to clipboard
@JvmName(name = "doesOverrideKFunction")
inline fun doesOverrideFunction(kClass: KClass<*>, function: KFunction<*>): Boolean
Link copied to clipboard
@JvmName(name = "doesOverrideKFunctionSelector")
inline fun doesOverrideFunctionSelector(kClass: KClass<*>, selector: KFunction<*>.() -> Boolean): Boolean

Does override function selector

Link copied to clipboard
@JvmName(name = "doesOverrideKProperty")
inline fun <T : Any, R> doesOverrideProperty(kClass: KClass<T>, property: KProperty<R>): Boolean
Link copied to clipboard
@JvmName(name = "doesOverrideKPropertySelector")
inline fun <T : Any> doesOverridePropertySelector(kClass: KClass<T>, selector: KProperty<*>.() -> Boolean): Boolean
Link copied to clipboard
@JvmName(name = "ifOverridesKFunctionKCallable")
inline fun <T : Any, R> ifOverridesFunction(kClass: KClass<T>, function: () -> R): R?
@JvmName(name = "ifOverridesKSuspendFunction")
inline fun <T : Any, R> ifOverridesFunction(kClass: KClass<T>, function: suspend () -> R): R?
@JvmName(name = "ifOverridesKFunctionInstance")
inline fun <T : Any, R> ifOverridesFunction(instance: T, function: KFunction<*>, action: T.() -> R): R?
@JvmName(name = "ifOverridesKFunction")
inline fun <T : Any, C : KFunction<*>, R> ifOverridesFunction(kClass: KClass<T>, function: C, action: C.() -> R): R?
Link copied to clipboard
@JvmName(name = "ifOverridesKPropertyInstance")
inline fun <T : Any, R> ifOverridesProperty(instance: T, property: KProperty<*>, action: T.() -> R): R?
@JvmName(name = "ifOverridesKProperty")
inline fun <T : Any, C : KProperty<*>, R> ifOverridesProperty(kClass: KClass<T>, property: C, action: C.() -> R): R?