github.com/traefik/yaegi@v0.15.1/_test/issue-1337.go (about)

     1  package main
     2  
     3  import (
     4  	"io"
     5  	"os"
     6  )
     7  
     8  func f(i interface{}) {
     9  	switch at := i.(type) {
    10  	case int, int8:
    11  		println("integer", at)
    12  	case io.Reader:
    13  		println("reader")
    14  	}
    15  	println("bye")
    16  }
    17  
    18  func main() {
    19  	var fd *os.File
    20  	var r io.Reader = fd
    21  	f(r)
    22  }
    23  
    24  // Output:
    25  // reader
    26  // bye