inline function
This commit is contained in:
parent
7df2044775
commit
5942a0e243
@ -15,8 +15,9 @@ fun main(args: Array<String>) {
|
|||||||
|
|
||||||
var lock = ReentrantLock()
|
var lock = ReentrantLock()
|
||||||
check(lock) {
|
check(lock) {
|
||||||
println("内联函数")
|
println("内联函数方法体")
|
||||||
}
|
}
|
||||||
|
check { it == 2 }
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <T> check(lock: Lock, body: () -> T): T {
|
inline fun <T> check(lock: Lock, body: () -> T): T {
|
||||||
@ -26,4 +27,12 @@ inline fun <T> check(lock: Lock, body: () -> T): T {
|
|||||||
} finally {
|
} finally {
|
||||||
lock.unlock()
|
lock.unlock()
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
inline fun check(noinline function: (Int) -> Boolean){
|
||||||
|
test(function)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun test(function: (Int) -> Boolean){
|
||||||
|
println("编译通过")
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user