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

     1  // Package refs is a package used to test find references.
     2  package refs
     3  
     4  type i int //@mark(typeI, "i"),refs("i", typeI, argI, returnI, embeddedI)
     5  
     6  type X struct {
     7  	Y int //@mark(typeXY, "Y")
     8  }
     9  
    10  func _(_ i) []bool { //@mark(argI, "i")
    11  	return nil
    12  }
    13  
    14  func _(_ []byte) i { //@mark(returnI, "i")
    15  	return 0
    16  }
    17  
    18  var q string //@mark(declQ, "q"),refs("q", declQ, assignQ, bobQ)
    19  
    20  var Q string //@mark(declExpQ, "Q"),refs("Q", declExpQ, assignExpQ, bobExpQ)
    21  
    22  func _() {
    23  	q = "hello" //@mark(assignQ, "q")
    24  	bob := func(_ string) {}
    25  	bob(q) //@mark(bobQ, "q")
    26  }
    27  
    28  type e struct {
    29  	i //@mark(embeddedI, "i"),refs("i", embeddedI, embeddedIUse)
    30  }
    31  
    32  func _() {
    33  	_ = e{}.i //@mark(embeddedIUse, "i")
    34  }
    35  
    36  const (
    37  	foo = iota //@refs("iota")
    38  )