Drop KParameter.isNoinline, KParameter.isCrossinline
There seems to be no valuable use cases for them at the moment
This commit is contained in:
@@ -7,7 +7,6 @@ import kotlin.test.assertTrue
|
|||||||
import kotlin.test.assertFalse
|
import kotlin.test.assertFalse
|
||||||
|
|
||||||
inline fun Unit.foo(
|
inline fun Unit.foo(
|
||||||
crossinline crossinline: () -> Unit,
|
|
||||||
noinline coroutine x: Unit.() -> Continuation<Unit>,
|
noinline coroutine x: Unit.() -> Continuation<Unit>,
|
||||||
vararg vararg: Unit
|
vararg vararg: Unit
|
||||||
) {}
|
) {}
|
||||||
@@ -15,25 +14,14 @@ inline fun Unit.foo(
|
|||||||
fun box(): String {
|
fun box(): String {
|
||||||
val p = Unit::foo.parameters
|
val p = Unit::foo.parameters
|
||||||
|
|
||||||
assertFalse(p[0].isNoinline)
|
|
||||||
assertFalse(p[0].isCrossinline)
|
|
||||||
assertFalse(p[0].isVararg)
|
assertFalse(p[0].isVararg)
|
||||||
assertFalse(p[0].isCoroutine)
|
assertFalse(p[0].isCoroutine)
|
||||||
|
|
||||||
assertFalse(p[1].isNoinline)
|
|
||||||
assertTrue(p[1].isCrossinline)
|
|
||||||
assertFalse(p[1].isVararg)
|
assertFalse(p[1].isVararg)
|
||||||
assertFalse(p[1].isCoroutine)
|
assertTrue(p[1].isCoroutine)
|
||||||
|
|
||||||
assertTrue(p[2].isNoinline)
|
assertTrue(p[2].isVararg)
|
||||||
assertFalse(p[2].isCrossinline)
|
assertFalse(p[2].isCoroutine)
|
||||||
assertFalse(p[2].isVararg)
|
|
||||||
assertTrue(p[2].isCoroutine)
|
|
||||||
|
|
||||||
assertFalse(p[3].isNoinline)
|
|
||||||
assertFalse(p[3].isCrossinline)
|
|
||||||
assertTrue(p[3].isVararg)
|
|
||||||
assertFalse(p[3].isCoroutine)
|
|
||||||
|
|
||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -78,22 +78,6 @@ public interface KParameter : KAnnotatedElement {
|
|||||||
@SinceKotlin("1.1")
|
@SinceKotlin("1.1")
|
||||||
public val isVararg: Boolean
|
public val isVararg: Boolean
|
||||||
|
|
||||||
/**
|
|
||||||
* `true` if this parameter is `noinline`.
|
|
||||||
* See the [Kotlin language documentation](https://kotlinlang.org/docs/reference/inline-functions.html#noinline)
|
|
||||||
* for more information.
|
|
||||||
*/
|
|
||||||
@SinceKotlin("1.1")
|
|
||||||
public val isNoinline: Boolean
|
|
||||||
|
|
||||||
/**
|
|
||||||
* `true` if this parameter is `crossinline`.
|
|
||||||
* See the [Kotlin language documentation](https://kotlinlang.org/docs/reference/inline-functions.html#non-local-returns)
|
|
||||||
* for more information.
|
|
||||||
*/
|
|
||||||
@SinceKotlin("1.1")
|
|
||||||
public val isCrossinline: Boolean
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* `true` if this parameter is `coroutine`.
|
* `true` if this parameter is `coroutine`.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -48,12 +48,6 @@ internal class KParameterImpl(
|
|||||||
override val isVararg: Boolean
|
override val isVararg: Boolean
|
||||||
get() = descriptor.let { it is ValueParameterDescriptor && it.varargElementType != null }
|
get() = descriptor.let { it is ValueParameterDescriptor && it.varargElementType != null }
|
||||||
|
|
||||||
override val isNoinline: Boolean
|
|
||||||
get() = descriptor.let { it is ValueParameterDescriptor && it.isNoinline }
|
|
||||||
|
|
||||||
override val isCrossinline: Boolean
|
|
||||||
get() = descriptor.let { it is ValueParameterDescriptor && it.isCrossinline }
|
|
||||||
|
|
||||||
override val isCoroutine: Boolean
|
override val isCoroutine: Boolean
|
||||||
get() = descriptor.let { it is ValueParameterDescriptor && it.isCoroutine }
|
get() = descriptor.let { it is ValueParameterDescriptor && it.isCoroutine }
|
||||||
|
|
||||||
|
|||||||
@@ -1194,8 +1194,6 @@ public abstract interface class kotlin/reflect/KParameter : kotlin/reflect/KAnno
|
|||||||
public abstract fun getName ()Ljava/lang/String;
|
public abstract fun getName ()Ljava/lang/String;
|
||||||
public abstract fun getType ()Lkotlin/reflect/KType;
|
public abstract fun getType ()Lkotlin/reflect/KType;
|
||||||
public abstract fun isCoroutine ()Z
|
public abstract fun isCoroutine ()Z
|
||||||
public abstract fun isCrossinline ()Z
|
|
||||||
public abstract fun isNoinline ()Z
|
|
||||||
public abstract fun isOptional ()Z
|
public abstract fun isOptional ()Z
|
||||||
public abstract fun isVararg ()Z
|
public abstract fun isVararg ()Z
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user