[FIR] Put new contract syntax under feauture flag
^KT-55171 Fixed
This commit is contained in:
committed by
Space Team
parent
2783aa13f5
commit
4c96495eef
Vendored
+2
-1
@@ -1,3 +1,4 @@
|
||||
// LANGUAGE: +ContractSyntaxV2
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
|
||||
import kotlin.contracts.*
|
||||
@@ -21,4 +22,4 @@ fun bar(arg: Any?, block: () -> Int): Boolean contract [
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+2
-1
@@ -1,3 +1,4 @@
|
||||
// LANGUAGE: +ContractSyntaxV2
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
|
||||
import kotlin.contracts.*
|
||||
@@ -21,4 +22,4 @@ fun bar(arg: Any?, block: () -> Int): Boolean contract <!UNSUPPORTED!>[
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
+3
-2
@@ -1,10 +1,11 @@
|
||||
// LANGUAGE: +ContractSyntaxV2
|
||||
import kotlin.contracts.*
|
||||
|
||||
fun calculateNumber(block: () -> Int): Int contract [
|
||||
callsInPlace(block, InvocationKind.EXACTLY_ONCE)
|
||||
] = block()
|
||||
|
||||
fun <R> calculateResult(num: Int?, calculate: (Int?) -> R): R contract [
|
||||
fun <R> calculateResult(num: Int?, calculate: (Int?) -> R): R contract <!WRONG_IMPLIES_CONDITION!>[
|
||||
callsInPlace(calculate, InvocationKind.EXACTLY_ONCE),
|
||||
returns() implies (num != null)
|
||||
] = calculate(num)
|
||||
]<!> = calculate(num)
|
||||
|
||||
+2
-1
@@ -1,3 +1,4 @@
|
||||
// LANGUAGE: +ContractSyntaxV2
|
||||
import kotlin.contracts.*
|
||||
|
||||
fun calculateNumber(block: () -> Int): Int contract <!UNSUPPORTED!>[
|
||||
@@ -7,4 +8,4 @@ fun calculateNumber(block: () -> Int): Int contract <!UNSUPPORTED!>[
|
||||
fun <R> calculateResult(num: Int?, calculate: (Int?) -> R): R contract <!UNSUPPORTED!>[
|
||||
callsInPlace(calculate, InvocationKind.EXACTLY_ONCE),
|
||||
returns() implies (num != null)
|
||||
]<!> = calculate(num)
|
||||
]<!> = calculate(num)
|
||||
|
||||
+2
-1
@@ -1,3 +1,4 @@
|
||||
// LANGUAGE: +ContractSyntaxV2
|
||||
import kotlin.contracts.*
|
||||
|
||||
class A {
|
||||
@@ -15,4 +16,4 @@ class A {
|
||||
|
||||
fun f(arg: Int) = arg * arg
|
||||
fun g(arg: Double) = arg / 2
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -1,3 +1,4 @@
|
||||
// LANGUAGE: +ContractSyntaxV2
|
||||
import kotlin.contracts.*
|
||||
|
||||
class A {
|
||||
@@ -15,4 +16,4 @@ class A {
|
||||
|
||||
fun f(arg: Int) = arg * arg
|
||||
fun g(arg: Double) = arg / 2
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -1,3 +1,4 @@
|
||||
// LANGUAGE: +ContractSyntaxV2
|
||||
import kotlin.contracts.*
|
||||
|
||||
fun printStr(str: String?) contract [
|
||||
@@ -19,4 +20,4 @@ fun calculateNumber(block: () -> Int): Int contract [
|
||||
] {
|
||||
val num = block()
|
||||
return num
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -1,3 +1,4 @@
|
||||
// LANGUAGE: +ContractSyntaxV2
|
||||
import kotlin.contracts.*
|
||||
|
||||
fun printStr(str: String?) contract <!UNSUPPORTED!>[
|
||||
@@ -19,4 +20,4 @@ fun calculateNumber(block: () -> Int): Int contract <!UNSUPPORTED!>[
|
||||
]<!> {
|
||||
val num = block()
|
||||
return num
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user