github.com/switchupcb/yaegi@v0.10.2/_test/composite15.go (about) 1 package main 2 3 import ( 4 "fmt" 5 ) 6 7 func interfaceAsInts() { 8 var a interface{} 9 b := 2 10 c := 3 11 a = []int{b, c} 12 13 d, ok := a.([]int) 14 if !ok { 15 println("nope") 16 return 17 } 18 19 for _, v := range d { 20 fmt.Println(v) 21 } 22 } 23 24 func interfaceAsInterfaces() { 25 var a, b, c interface{} 26 b = 2 27 c = 3 28 a = []interface{}{b, c} 29 30 d, ok := a.([]interface{}) 31 if !ok { 32 println("nope") 33 return 34 } 35 fmt.Println(d) 36 37 for _, v := range d { 38 fmt.Println(v) 39 } 40 } 41 42 func main() { 43 interfaceAsInts() 44 interfaceAsInterfaces() 45 } 46 47 // Output: 48 // 2 49 // 3 50 // [2 3] 51 // 2 52 // 3