github.com/gopherjs/gopherjs@v1.19.0-beta1.0.20240506212314-27071a8796e4/tests/testdata/defer_builtin.go (about) 1 package main 2 3 type ( 4 set map[interface{}]struct{} 5 key struct{ a int } 6 ) 7 8 var m = set{} 9 10 func deferredDelete(k key) { 11 // This built-in deferral will transpile into a "delete" statement wrapped 12 // into a proxy lambda. This test ensures we correctly assign proxy lambda 13 // argument types. 14 defer delete(m, k) 15 } 16 17 func main() { 18 k := key{a: 42} 19 m[k] = struct{}{} 20 deferredDelete(k) 21 if _, found := m[k]; found { 22 panic("deferred delete didn't work!") 23 } 24 }