github.com/traefik/yaegi@v0.15.1/_test/struct33.go (about)

     1  package main
     2  
     3  type T0 struct {
     4  	name string
     5  }
     6  
     7  type lookupFunc func(s string) T0
     8  
     9  type T1 struct {
    10  	name string
    11  	info lookupFunc
    12  }
    13  
    14  func (t T0) F1() bool { println("in F1"); return true }
    15  
    16  var t0 = T0{"t0"}
    17  
    18  func look(s string) T0 { println("in look"); return t0 }
    19  
    20  var table = []*T1{{
    21  	name: "bar",
    22  	info: look,
    23  },
    24  }
    25  
    26  func main() {
    27  	info := table[0].info
    28  	println(info("foo").F1())
    29  }
    30  
    31  // Output:
    32  // in look
    33  // in F1
    34  // true