[Tests] Make build green again

This commit is contained in:
Anastasiya Shadrina
2021-10-26 19:29:36 +07:00
committed by TeamCityServer
parent 98e84a926a
commit c59ed6344e
4 changed files with 39 additions and 3 deletions
@@ -0,0 +1,34 @@
// !LANGUAGE: +ContextReceivers
class File(name: String)
interface InputStream
interface AutoCloseScope {
fun defer(closeBlock: () -> Unit)
fun close()
}
class AutoCloseScopeImpl : AutoCloseScope {
override fun defer(closeBlock: () -> Unit) = TODO()
override fun close() = TODO()
}
context(AutoCloseScope)
fun File.open(): InputStream = TODO()
fun withAutoClose(block: context(AutoCloseScope) () -> Unit) {
val scope = AutoCloseScopeImpl() // Not shown here
try {
with(scope) { block() }
} finally {
scope.close()
}
}
fun test() {
withAutoClose {
val input = File("input.txt").open()
val config = File("config.txt").open()
// Work
// All files are closed at the end
}
}
@@ -1,5 +1,4 @@
// !LANGUAGE: +ContextReceivers
// FIR_IDENTICAL
class File(name: String)
interface InputStream