github.com/v2fly/tools@v0.100.0/internal/lsp/testdata/interfacerank/interface_rank.go (about)

     1  package interfacerank
     2  
     3  type foo interface {
     4  	foo()
     5  }
     6  
     7  type fooImpl int
     8  
     9  func (*fooImpl) foo() {}
    10  
    11  func wantsFoo(foo) {}
    12  
    13  func _() {
    14  	var (
    15  		aa string   //@item(irAA, "aa", "string", "var")
    16  		ab *fooImpl //@item(irAB, "ab", "*fooImpl", "var")
    17  	)
    18  
    19  	wantsFoo(a) //@complete(")", irAB, irAA)
    20  
    21  	var ac fooImpl //@item(irAC, "ac", "fooImpl", "var")
    22  	wantsFoo(&a)   //@complete(")", irAC, irAA, irAB)
    23  }