.gitignore added
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools@v0.1.1-0.20210319172145-bda8f5cee399 / internal / lsp / testdata / godef / b / b.go
1 package b
2
3 import (
4         myFoo "golang.org/x/tools/internal/lsp/foo" //@mark(myFoo, "myFoo"),godef("myFoo", myFoo)
5         "golang.org/x/tools/internal/lsp/godef/a"   //@mark(AImport, re"\".*\"")
6 )
7
8 type Embed struct {
9         *a.A
10         a.I
11         a.S
12 }
13
14 func _() {
15         e := Embed{}
16         e.Hi()      //@hover("Hi", AHi)
17         e.B()       //@hover("B", AB)
18         e.Field     //@hover("Field", AField)
19         e.Field2    //@hover("Field2", AField2)
20         e.Hello()   //@hover("Hello", AHello)
21         e.Hey()     //@hover("Hey", AHey)
22         e.Goodbye() //@hover("Goodbye", AGoodbye)
23 }
24
25 type aAlias = a.A //@mark(aAlias, "aAlias")
26
27 type S1 struct { //@S1
28         F1     int //@mark(S1F1, "F1")
29         S2         //@godef("S2", S2),mark(S1S2, "S2")
30         a.A        //@godef("A", AString)
31         aAlias     //@godef("a", aAlias)
32 }
33
34 type S2 struct { //@S2
35         F1   string //@mark(S2F1, "F1")
36         F2   int    //@mark(S2F2, "F2")
37         *a.A        //@godef("A", AString),godef("a",AImport)
38 }
39
40 type S3 struct {
41         F1 struct {
42                 a.A //@godef("A", AString)
43         }
44 }
45
46 func Bar() {
47         a.AStuff()  //@godef("AStuff", AStuff)
48         var x S1    //@godef("S1", S1)
49         _ = x.S2    //@godef("S2", S1S2)
50         _ = x.F1    //@godef("F1", S1F1)
51         _ = x.F2    //@godef("F2", S2F2)
52         _ = x.S2.F1 //@godef("F1", S2F1)
53
54         var _ *myFoo.StructFoo //@godef("myFoo", myFoo)
55 }
56
57 const X = 0 //@mark(bX, "X"),godef("X", bX)