github.com/v2fly/tools@v0.100.0/internal/lsp/testdata/foo/foo.go (about) 1 package foo //@mark(PackageFoo, "foo"),item(PackageFoo, "foo", "\"github.com/v2fly/tools/internal/lsp/foo\"", "package") 2 3 type StructFoo struct { //@item(StructFoo, "StructFoo", "struct{...}", "struct") 4 Value int //@item(Value, "Value", "int", "field") 5 } 6 7 // Pre-set this marker, as we don't have a "source" for it in this package. 8 /* Error() */ //@item(Error, "Error", "func() string", "method") 9 10 func Foo() { //@item(Foo, "Foo", "func()", "func") 11 var err error 12 err.Error() //@complete("E", Error) 13 } 14 15 func _() { 16 var sFoo StructFoo //@mark(sFoo1, "sFoo"),complete("t", StructFoo) 17 if x := sFoo; x.Value == 1 { //@mark(sFoo2, "sFoo"),complete("V", Value),typdef("sFoo", StructFoo),refs("sFo", sFoo1, sFoo2) 18 return 19 } 20 } 21 22 func _() { 23 shadowed := 123 24 { 25 shadowed := "hi" //@item(shadowed, "shadowed", "string", "var"),refs("shadowed", shadowed) 26 sha //@complete("a", shadowed) 27 } 28 } 29 30 type IntFoo int //@item(IntFoo, "IntFoo", "int", "type")