github.com/powerman/golang-tools@v0.1.11-0.20220410185822-5ad214d8d803/internal/lsp/testdata/multireturn/multi_return.go.in (about)

     1  package multireturn
     2  
     3  func f0() {} //@item(multiF0, "f0", "func()", "func")
     4  
     5  func f1(int) int { return 0 } //@item(multiF1, "f1", "func(int) int", "func")
     6  
     7  func f2(int, int) (int, int) { return 0, 0 } //@item(multiF2, "f2", "func(int, int) (int, int)", "func")
     8  
     9  func f2Str(string, string) (string, string) { return "", "" } //@item(multiF2Str, "f2Str", "func(string, string) (string, string)", "func")
    10  
    11  func f3(int, int, int) (int, int, int) { return 0, 0, 0 } //@item(multiF3, "f3", "func(int, int, int) (int, int, int)", "func")
    12  
    13  func _() {
    14  	_ := f //@rank(" //", multiF1, multiF2)
    15  
    16  	_, _ := f //@rank(" //", multiF2, multiF0),rank(" //", multiF1, multiF0)
    17  
    18  	_, _ := _, f //@rank(" //", multiF1, multiF2),rank(" //", multiF1, multiF0)
    19  
    20  	_, _ := f, abc //@rank(", abc", multiF1, multiF2)
    21  
    22  	f1()     //@rank(")", multiF1, multiF0)
    23  	f1(f)    //@rank(")", multiF1, multiF2)
    24  	f2(f)    //@rank(")", multiF2, multiF3),rank(")", multiF1, multiF3)
    25  	f2(1, f) //@rank(")", multiF1, multiF2),rank(")", multiF1, multiF0)
    26  	f2(1, )  //@rank(")", multiF1, multiF2),rank(")", multiF1, multiF0)
    27  	f2Str()  //@rank(")", multiF2Str, multiF2)
    28  
    29  	var i int
    30  	i, _ := f //@rank(" //", multiF2, multiF2Str)
    31  
    32  	var s string
    33  	_, s := f //@rank(" //", multiF2Str, multiF2)
    34  
    35  	banana, s = f //@rank(" //", multiF2, multiF3)
    36  
    37  	var variadic func(int, ...int)
    38  	variadic() //@rank(")", multiF1, multiF0),rank(")", multiF2, multiF0),rank(")", multiF3, multiF0)
    39  }
    40  
    41  func _() {
    42  	var baz func(...interface{})
    43  
    44  	var otterNap func() (int, int) //@item(multiTwo, "otterNap", "func() (int, int)", "var")
    45  	var one int                    //@item(multiOne, "one", "int", "var")
    46  
    47  	baz(on) //@rank(")", multiOne, multiTwo)
    48  }