honnef.co/go/tools@v0.5.0-0.dev.0.20240520180541-dcae280a5e87/unused/testdata/src/example.com/functions/functions.go (about)

     1  package main
     2  
     3  type state func() state //@ used("state", true)
     4  
     5  func a() state { //@ used("a", true)
     6  	return a
     7  }
     8  
     9  func main() { //@ used("main", true)
    10  	st := a //@ used("st", true)
    11  	_ = st()
    12  }
    13  
    14  type t1 struct{} //@ used("t1", false)
    15  type t2 struct{} //@ used("t2", true)
    16  type t3 struct{} //@ used("t3", true)
    17  
    18  func fn1() t1     { return t1{} } //@ used("fn1", false)
    19  func fn2() (x t2) { return }      //@ used("fn2", true), used("x", true)
    20  func fn3() *t3    { return nil }  //@ used("fn3", true)
    21  
    22  func fn4() { //@ used("fn4", true)
    23  	const x = 1  //@ used("x", true)
    24  	const y = 2  //@ used("y", false)
    25  	type foo int //@ used("foo", false)
    26  	type bar int //@ used("bar", true)
    27  
    28  	_ = x
    29  	_ = bar(0)
    30  }
    31  
    32  func init() { //@ used("init", true)
    33  	fn2()
    34  	fn3()
    35  	fn4()
    36  }