github.com/HaHadaxigua/yaegi@v1.0.1/_test/closure1.go (about)

     1  package main
     2  
     3  type adder func(int, int) int
     4  
     5  func genAdd(k int) adder {
     6  	return func(i, j int) int {
     7  		return i + j + k
     8  	}
     9  }
    10  
    11  func main() {
    12  	f := genAdd(5)
    13  	g := genAdd(8)
    14  	println(f(3, 4))
    15  	println(g(3, 4))
    16  }
    17  
    18  // Output:
    19  // 12
    20  // 15