-- 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")

