| -- S1-definition -- |
| godef/b/b.go:8:6-8: defined here as [`b.S1` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1) |
| |
| ```go |
| S1 struct { |
| F1 int //@mark(S1F1, "F1") |
| S2 //@godef("S2", S2), mark(S1S2, "S2") |
| a.A //@godef("A", A) |
| } |
| ``` |
| -- 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": "[`b.S1` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1)\n\n```go\nS1 struct {\n\tF1 int //@mark(S1F1, \"F1\")\n\tS2 //@godef(\"S2\", S2), mark(S1S2, \"S2\")\n\ta.A //@godef(\"A\", A)\n}\n```" |
| } |
| |
| -- S1-hover -- |
| [`b.S1` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1) |
| |
| ```go |
| S1 struct { |
| F1 int //@mark(S1F1, "F1") |
| S2 //@godef("S2", S2), mark(S1S2, "S2") |
| a.A //@godef("A", A) |
| } |
| ``` |
| -- S1F1-definition -- |
| godef/b/b.go:9:2-4: defined here as \@mark\(S1F1, \"F1\"\) |
| |
| [`(b.S1).F1` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1.F1) |
| |
| ```go |
| 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\\\"\\)\n\n[`(b.S1).F1` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1.F1)\n\n```go\nfield F1 int\n```" |
| } |
| |
| -- S1F1-hover -- |
| \@mark\(S1F1, \"F1\"\) |
| |
| [`(b.S1).F1` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/b#S1.F1) |
| |
| ```go |
| field F1 int |
| ``` |