We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Example:
var lambda: (() -> String)? = null fun f() { try { } finally { lambda = { "OK" } } } @JvmStatic fun box(): String { f() return lambda?.let { it() } ?: "fail" }
The text was updated successfully, but these errors were encountered:
One more test for try/catch/finally:
fun test1() : String { var s = ""; try { try { s += "Try"; throw Exception() } catch (x : Exception) { s += "Catch"; throw x } finally { s += "Finally"; } } catch (x : Exception) { return s } } fun test2() : String { var s = ""; try { s += "Try"; throw Exception() } catch (x : Exception) { s += "Catch"; } finally { s += "Finally"; } return s } fun box() : String { if (test1() != "TryCatchFinally") return "fail1: ${test1()}" if (test2() != "TryCatchFinally") return "fail2: ${test2()}" return "OK" }
Sorry, something went wrong.
More:
fun unsupportedEx() { if (true) throw UnsupportedOperationException() } fun runtimeEx() { if (true) throw RuntimeException() } fun test1WithFinally() : String { var s = ""; try { try { s += "Try"; unsupportedEx() } finally { s += "Finally" } } catch (x : RuntimeException) { return s } return s + "Failed" } fun test2WithFinally() : String { var s = ""; try { try { s += "Try"; unsupportedEx() return s } finally { s += "Finally" } } catch (x : RuntimeException) { return s } } fun box() : String { if (test1WithFinally() != "TryFinally") return "fail2: ${test1WithFinally()}" if (test2WithFinally() != "TryFinally") return "fail4: ${test2WithFinally()}" return "OK" }
No branches or pull requests
Example:
The text was updated successfully, but these errors were encountered: