Defer for trivial cases

This commit is contained in:
Ayke van Laethem
2018-09-01 17:09:56 +02:00
parent cd2a9d99a1
commit 58b853bbef
3 changed files with 49 additions and 1 deletions
+13
View File
@@ -48,6 +48,7 @@ func main() {
println("Stringer.String():", s.String())
runFunc(hello, 5) // must be indirect to avoid obvious inlining
testDefer()
// test library functions
println("lower to upper char:", 'h', "->", unicode.ToUpper('h'))
@@ -57,6 +58,18 @@ func runFunc(f func(int), arg int) {
f(arg)
}
func testDefer() {
i := 1
defer deferred("...run as defer", i)
i += 1
defer deferred("...run as defer", i)
println("deferring...")
}
func deferred(msg string, i int) {
println(msg, i)
}
func readMap(m map[string]int, key string) {
println("map length:", len(m))
println("map read:", key, "=", m[key])