| -- A-definition -- |
| godef/a/a.go:7:6-7: defined here as A string //@A |
| |
| [A on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a#A) |
| -- A-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/a/a.go", |
| "start": { |
| "line": 7, |
| "column": 6, |
| "offset": 75 |
| }, |
| "end": { |
| "line": 7, |
| "column": 7, |
| "offset": 76 |
| } |
| }, |
| "description": "A string //@A\n\n[A on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a#A)" |
| } |
| |
| -- A-hover -- |
| A string //@A |
| |
| [A on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a#A) |
| -- AImport-definition -- |
| godef/b/b.go:5:2-43: defined here as package a ("golang.org/x/tools/internal/lsp/godef/a") |
| -- AImport-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 5, |
| "column": 2, |
| "offset": 112 |
| }, |
| "end": { |
| "line": 5, |
| "column": 43, |
| "offset": 153 |
| } |
| }, |
| "description": "package a (\"golang.org/x/tools/internal/lsp/godef/a\")" |
| } |
| |
| -- AImport-hover -- |
| package a ("golang.org/x/tools/internal/lsp/godef/a") |
| |
| -- AStuff-definition -- |
| godef/a/a.go:9:6-12: defined here as func a.AStuff() |
| [AStuff on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a#AStuff) |
| -- AStuff-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/a/a.go", |
| "start": { |
| "line": 9, |
| "column": 6, |
| "offset": 95 |
| }, |
| "end": { |
| "line": 9, |
| "column": 12, |
| "offset": 101 |
| } |
| }, |
| "description": "func a.AStuff()\n[AStuff on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a#AStuff)" |
| } |
| |
| -- AStuff-hover -- |
| func a.AStuff() |
| [AStuff on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a#AStuff) |
| -- PackageFoo-definition -- |
| foo/foo.go:1:1-30:16: defined here as myFoo "golang.org/x/tools/internal/lsp/foo" //@mark(myFoo, "myFoo"),godef("foo", PackageFoo),godef("myFoo", myFoo) |
| -- PackageFoo-definition-json -- |
| { |
| "span": { |
| "uri": "file://foo/foo.go", |
| "start": { |
| "line": 1, |
| "column": 1, |
| "offset": 0 |
| }, |
| "end": { |
| "line": 30, |
| "column": 16, |
| "offset": 922 |
| } |
| }, |
| "description": "myFoo \"golang.org/x/tools/internal/lsp/foo\" //@mark(myFoo, \"myFoo\"),godef(\"foo\", PackageFoo),godef(\"myFoo\", myFoo)" |
| } |
| |
| -- PackageFoo-hover -- |
| myFoo "golang.org/x/tools/internal/lsp/foo" //@mark(myFoo, "myFoo"),godef("foo", PackageFoo),godef("myFoo", myFoo) |
| |
| -- S1-definition -- |
| godef/b/b.go:8:6-8: defined here as S1 struct { |
| F1 int //@mark(S1F1, "F1") |
| S2 //@godef("S2", S2), mark(S1S2, "S2") |
| a.A //@godef("A", A) |
| } |
| [S1 on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1) |
| -- S1-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 8, |
| "column": 6, |
| "offset": 193 |
| }, |
| "end": { |
| "line": 8, |
| "column": 8, |
| "offset": 195 |
| } |
| }, |
| "description": "S1 struct {\n\tF1 int //@mark(S1F1, \"F1\")\n\tS2 //@godef(\"S2\", S2), mark(S1S2, \"S2\")\n\ta.A //@godef(\"A\", A)\n}\n[S1 on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1)" |
| } |
| |
| -- S1-hover -- |
| S1 struct { |
| F1 int //@mark(S1F1, "F1") |
| S2 //@godef("S2", S2), mark(S1S2, "S2") |
| a.A //@godef("A", A) |
| } |
| [S1 on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1) |
| -- S1F1-definition -- |
| godef/b/b.go:9:2-4: defined here as @mark(S1F1, "F1") |
| field F1 int |
| -- S1F1-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 9, |
| "column": 2, |
| "offset": 212 |
| }, |
| "end": { |
| "line": 9, |
| "column": 4, |
| "offset": 214 |
| } |
| }, |
| "description": "@mark(S1F1, \"F1\")\nfield F1 int" |
| } |
| |
| -- S1F1-hover -- |
| @mark(S1F1, "F1") |
| field F1 int |
| |
| -- S1S2-definition -- |
| godef/b/b.go:10:2-4: defined here as @godef("S2", S2), mark(S1S2, "S2") |
| field S2 S2 |
| -- S1S2-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 10, |
| "column": 2, |
| "offset": 241 |
| }, |
| "end": { |
| "line": 10, |
| "column": 4, |
| "offset": 243 |
| } |
| }, |
| "description": "@godef(\"S2\", S2), mark(S1S2, \"S2\")\nfield S2 S2" |
| } |
| |
| -- S1S2-hover -- |
| @godef("S2", S2), mark(S1S2, "S2") |
| field S2 S2 |
| |
| -- S2-definition -- |
| godef/b/b.go:14:6-8: defined here as S2 struct { |
| F1 string //@mark(S2F1, "F1") |
| F2 int //@mark(S2F2, "F2") |
| *a.A //@godef("A", A),godef("a",AImport) |
| } |
| [S2 on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S2) |
| -- S2-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 14, |
| "column": 6, |
| "offset": 320 |
| }, |
| "end": { |
| "line": 14, |
| "column": 8, |
| "offset": 322 |
| } |
| }, |
| "description": "S2 struct {\n\tF1 string //@mark(S2F1, \"F1\")\n\tF2 int //@mark(S2F2, \"F2\")\n\t*a.A //@godef(\"A\", A),godef(\"a\",AImport)\n}\n[S2 on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S2)" |
| } |
| |
| -- S2-hover -- |
| S2 struct { |
| F1 string //@mark(S2F1, "F1") |
| F2 int //@mark(S2F2, "F2") |
| *a.A //@godef("A", A),godef("a",AImport) |
| } |
| [S2 on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S2) |
| -- S2F1-definition -- |
| godef/b/b.go:15:2-4: defined here as @mark(S2F1, "F1") |
| field F1 string |
| -- S2F1-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 15, |
| "column": 2, |
| "offset": 339 |
| }, |
| "end": { |
| "line": 15, |
| "column": 4, |
| "offset": 341 |
| } |
| }, |
| "description": "@mark(S2F1, \"F1\")\nfield F1 string" |
| } |
| |
| -- S2F1-hover -- |
| @mark(S2F1, "F1") |
| field F1 string |
| |
| -- S2F2-definition -- |
| godef/b/b.go:16:2-4: defined here as @mark(S2F2, "F2") |
| field F2 int |
| -- S2F2-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 16, |
| "column": 2, |
| "offset": 372 |
| }, |
| "end": { |
| "line": 16, |
| "column": 4, |
| "offset": 374 |
| } |
| }, |
| "description": "@mark(S2F2, \"F2\")\nfield F2 int" |
| } |
| |
| -- S2F2-hover -- |
| @mark(S2F2, "F2") |
| field F2 int |
| |
| -- Stuff-definition -- |
| godef/a/a.go:9:6-11: defined here as func a.Stuff() |
| -- Stuff-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/a/a.go", |
| "start": { |
| "line": 9, |
| "column": 6, |
| "offset": 95 |
| }, |
| "end": { |
| "line": 9, |
| "column": 11, |
| "offset": 100 |
| } |
| }, |
| "description": "func a.Stuff()" |
| } |
| |
| -- Stuff-hover -- |
| func a.Stuff() |
| -- X-definition -- |
| godef/b/b.go:37:7-8: defined here as const X untyped int = 0 |
| [X on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#X) |
| -- X-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 37, |
| "column": 7, |
| "offset": 795 |
| }, |
| "end": { |
| "line": 37, |
| "column": 8, |
| "offset": 796 |
| } |
| }, |
| "description": "const X untyped int = 0\n[X on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#X)" |
| } |
| |
| -- X-hover -- |
| const X untyped int = 0 |
| [X on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#X) |
| -- myFoo-definition -- |
| godef/b/b.go:4:2-7: defined here as package myFoo ("golang.org/x/tools/internal/lsp/foo") |
| -- myFoo-definition-json -- |
| { |
| "span": { |
| "uri": "file://godef/b/b.go", |
| "start": { |
| "line": 4, |
| "column": 2, |
| "offset": 21 |
| }, |
| "end": { |
| "line": 4, |
| "column": 7, |
| "offset": 26 |
| } |
| }, |
| "description": "package myFoo (\"golang.org/x/tools/internal/lsp/foo\")" |
| } |
| |
| -- myFoo-hover -- |
| package myFoo ("golang.org/x/tools/internal/lsp/foo") |
| |