Giant blob of minor changes
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools@v0.0.0-20201105173854-bc9fc8d8c4bc / go / callgraph / cha / testdata / recv.go
1 // +build ignore
2
3 package main
4
5 type I interface {
6         f()
7 }
8
9 type J interface {
10         g()
11 }
12
13 type C int // C and *C implement I; *C implements J
14
15 func (C) f()
16 func (*C) g()
17
18 type D int // *D implements I and J
19
20 func (*D) f()
21 func (*D) g()
22
23 func f(i I) {
24         i.f() // calls C, *C, *D
25 }
26
27 func g(j J) {
28         j.g() // calls *C, *D
29 }
30
31 // WANT:
32 // Dynamic calls
33 //   f --> (*C).f
34 //   f --> (*D).f
35 //   f --> (C).f
36 //   g --> (*C).g
37 //   g --> (*D).g