Giant blob of minor changes
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools@v0.0.0-20201028153306-37f0764111ff / internal / lsp / testdata / rank / convert_rank.go.in
diff --git a/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201028153306-37f0764111ff/internal/lsp/testdata/rank/convert_rank.go.in b/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201028153306-37f0764111ff/internal/lsp/testdata/rank/convert_rank.go.in
new file mode 100644 (file)
index 0000000..77850ef
--- /dev/null
@@ -0,0 +1,45 @@
+package rank
+
+func _() {
+       type strList []string
+       wantsStrList := func(strList) {}
+
+       var (
+               convA string   //@item(convertA, "convA", "string", "var")
+               convB []string //@item(convertB, "convB", "[]string", "var")
+       )
+       wantsStrList(strList(conv)) //@complete("))", convertB, convertA)
+}
+
+func _() {
+
+       type myInt int
+
+       const (
+               convC        = "hi"    //@item(convertC, "convC", "string", "const")
+               convD        = 123     //@item(convertD, "convD", "int", "const")
+               convE int    = 123     //@item(convertE, "convE", "int", "const")
+               convF string = "there" //@item(convertF, "convF", "string", "const")
+               convG myInt  = 123     //@item(convertG, "convG", "myInt", "const")
+       )
+
+       var foo int
+       foo = conv //@rank(" //", convertE, convertD)
+
+       var mi myInt
+       mi = conv //@rank(" //", convertG, convertD, convertE)
+       mi + conv //@rank(" //", convertG, convertD, convertE)
+
+       1 + conv //@rank(" //", convertD, convertC),rank(" //", convertE, convertC),rank(" //", convertG, convertC)
+
+       type myString string
+       var ms myString
+       ms = conv //@rank(" //", convertC, convertF)
+
+       type myUint uint32
+       var mu myUint
+       mu = conv //@rank(" //", convertD, convertE)
+
+       // don't downrank constants when assigning to interface{}
+       var _ interface{} = c //@rank(" //", convertD, complex)
+}