1 2 3 4 5 6 7 8 9 10 11 12 13
interface Animal { speak(s string) } struct Cat {} fn (c Cat) speak() {} fn foo(a Animal) {} fn main() { foo(Cat{}) }