blob: 182928eebbcfdf426e3f14cebdcfcb25ad0ade44 [file] [log] [blame]
-- Lock-hoverdef --
```go
func (*sync.Mutex).Lock()
```
[`(sync.Mutex).Lock` on pkg.go.dev](https://pkg.go.dev/sync?utm_source=gopls#Mutex.Lock)
Lock locks m\.
-- Name-hoverdef --
```go
func (*types.object).Name() string
```
[`(types.TypeName).Name` on pkg.go.dev](https://pkg.go.dev/go/types?utm_source=gopls#TypeName.Name)
Name returns the object\'s \(package\-local, unqualified\) name\.
-- Random-definition --
godef/a/random.go:3:6-12: defined here as ```go
func Random() int
```
[`a.Random` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a?utm_source=gopls#Random)
-- Random-definition-json --
{
"span": {
"uri": "file://godef/a/random.go",
"start": {
"line": 3,
"column": 6,
"offset": 16
},
"end": {
"line": 3,
"column": 12,
"offset": 22
}
},
"description": "```go\nfunc Random() int\n```\n\n[`a.Random` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a?utm_source=gopls#Random)"
}
-- Random-hoverdef --
```go
func Random() int
```
[`a.Random` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a?utm_source=gopls#Random)
-- Random2-definition --
godef/a/random.go:8:6-13: defined here as ```go
func Random2(y int) int
```
[`a.Random2` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a?utm_source=gopls#Random2)
-- Random2-definition-json --
{
"span": {
"uri": "file://godef/a/random.go",
"start": {
"line": 8,
"column": 6,
"offset": 71
},
"end": {
"line": 8,
"column": 13,
"offset": 78
}
},
"description": "```go\nfunc Random2(y int) int\n```\n\n[`a.Random2` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a?utm_source=gopls#Random2)"
}
-- Random2-hoverdef --
```go
func Random2(y int) int
```
[`a.Random2` on pkg.go.dev](https://pkg.go.dev/golang.org/x/tools/internal/lsp/godef/a?utm_source=gopls#Random2)
-- aPackage-hoverdef --
Package a is a package for testing go to definition\.
-- declBlockA-hoverdef --
```go
type a struct {
x string
}
```
1st type declaration block
-- declBlockB-hoverdef --
```go
type b struct{}
```
b has a comment
-- declBlockC-hoverdef --
```go
type c struct {
f string
}
```
c is a struct
-- declBlockD-hoverdef --
```go
type d string
```
3rd type declaration block
-- declBlockE-hoverdef --
```go
type e struct {
f float64
}
```
e has a comment
-- err-definition --
godef/a/a.go:33:6-9: defined here as ```go
var err error
```
\@err
-- err-definition-json --
{
"span": {
"uri": "file://godef/a/a.go",
"start": {
"line": 33,
"column": 6,
"offset": 612
},
"end": {
"line": 33,
"column": 9,
"offset": 615
}
},
"description": "```go\nvar err error\n```\n\n\\@err"
}
-- err-hoverdef --
```go
var err error
```
\@err
-- g-hoverdef --
```go
const g untyped int = 1
```
When I hover on g, I should see this comment\.
-- h-hoverdef --
```go
const h untyped int = 2
```
Constant block\.
-- make-hoverdef --
```go
func(t Type, size ...IntegerType) Type
```
[`make` on pkg.go.dev](https://pkg.go.dev/builtin?utm_source=gopls#make)
The make built\-in function allocates and initializes an object of type slice, map, or chan \(only\)\.
-- string-hoverdef --
```go
string
```
-- typesImport-hoverdef --
```go
package types ("go/types")
```
[`types` on pkg.go.dev](https://pkg.go.dev/go/types?utm_source=gopls)
-- x-hoverdef --
```go
var x string
```
x is a variable\.
-- z-hoverdef --
```go
var z string
```
z is a variable too\.