| package main |
| |
| // Tests of 'implements' query. |
| // See go.tools/guru/guru_test.go for explanation. |
| // See implements.golden for expected query results. |
| |
| import _ "lib" |
| |
| func main() { |
| } |
| |
| type E interface{} // @implements E "E" |
| |
| type F interface { // @implements F "F" |
| f() |
| } |
| |
| type FG interface { // @implements FG "FG" |
| f() |
| g() []int // @implements slice "..int" |
| } |
| |
| type C int // @implements C "C" |
| type D struct{} |
| |
| func (c *C) f() {} // @implements starC ".C" |
| func (d D) f() {} // @implements D "D" |
| |
| func (d *D) g() []int { return nil } // @implements starD ".D" |
| |
| type sorter []int // @implements sorter "sorter" |
| |
| func (sorter) Len() int { return 0 } |
| func (sorter) Less(i, j int) bool { return false } |
| func (sorter) Swap(i, j int) {} |
| |
| type I interface { // @implements I "I" |
| Method(*int) *int |
| } |
| |
| func _() { |
| var d D |
| _ = d // @implements var_d "d" |
| } |