aboutsummaryrefslogtreecommitdiff
path: root/internal/lsp/testdata/godef/b/e.go
blob: 7b96cd7e8ae2c8ed847ef6527d383297daa27418 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package b

import (
	"fmt"

	"golang.org/x/tools/internal/lsp/godef/a"
)

func useThings() {
	t := a.Thing{}      //@mark(bStructType, "ing")
	fmt.Print(t.Member) //@mark(bMember, "ember")
	fmt.Print(a.Other)  //@mark(bVar, "ther")
	a.Things()          //@mark(bFunc, "ings")
}

/*@
godef(bStructType, Thing)
godef(bMember, Member)
godef(bVar, Other)
godef(bFunc, Things)
*/

func _() {
	var x interface{}      //@mark(eInterface, "interface{}")
	switch x := x.(type) { //@hoverdef("x", eInterface)
	case string: //@mark(eString, "string")
		fmt.Println(x) //@hoverdef("x", eString)
	case int: //@mark(eInt, "int")
		fmt.Println(x) //@hoverdef("x", eInt)
	}
}