aboutsummaryrefslogtreecommitdiff
path: root/gopls/internal/lsp/testdata/rank/type_switch_rank.go.in
diff options
context:
space:
mode:
authorDan Willemsen <dwillemsen@google.com>2023-03-15 13:19:36 -0400
committerDan Willemsen <dwillemsen@google.com>2023-03-15 14:18:08 -0400
commit09c5a32afc5b66f28f166a68afe1fc71afbf9b73 (patch)
tree194d7b0e539d014393564a256bec571e18d6533a /gopls/internal/lsp/testdata/rank/type_switch_rank.go.in
parentf10932f763d058b0dcb3acfb795c869996fef47b (diff)
parent031fc75960d487b0b15db12fb328676236a3a39c (diff)
downloadgolang-x-tools-master.tar.gz
Upgrade golang-x-tools to v0.7.0HEADmastermain
Not using external_updater this time to switch to the new upstream tags. Test: treehugger Change-Id: I31488b4958a366ed7f183bb387d3e1446acc13ae
Diffstat (limited to 'gopls/internal/lsp/testdata/rank/type_switch_rank.go.in')
-rw-r--r--gopls/internal/lsp/testdata/rank/type_switch_rank.go.in31
1 files changed, 31 insertions, 0 deletions
diff --git a/gopls/internal/lsp/testdata/rank/type_switch_rank.go.in b/gopls/internal/lsp/testdata/rank/type_switch_rank.go.in
new file mode 100644
index 000000000..1ed12b7c1
--- /dev/null
+++ b/gopls/internal/lsp/testdata/rank/type_switch_rank.go.in
@@ -0,0 +1,31 @@
+package rank
+
+import (
+ "fmt"
+ "go/ast"
+)
+
+func _() {
+ type basket int //@item(basket, "basket", "int", "type")
+ var banana string //@item(banana, "banana", "string", "var")
+
+ switch interface{}(pear).(type) {
+ case b: //@complete(":", basket)
+ b //@complete(" //", banana, basket)
+ }
+
+ Ident //@item(astIdent, "Ident", "struct{...}", "struct")
+ IfStmt //@item(astIfStmt, "IfStmt", "struct{...}", "struct")
+
+ switch ast.Node(nil).(type) {
+ case *ast.Ident:
+ case *ast.I: //@rank(":", astIfStmt, astIdent)
+ }
+
+ Stringer //@item(fmtStringer, "Stringer", "interface{...}", "interface")
+ GoStringer //@item(fmtGoStringer, "GoStringer", "interface{...}", "interface")
+
+ switch interface{}(nil).(type) {
+ case fmt.Stringer: //@rank(":", fmtStringer, fmtGoStringer)
+ }
+}