

Go tool for finding all impls of a Go interface type on GitHub - sqs
https://sourcegraph.com/blog/go-interfaces-and-implementations

======
sqs
We made this tool and presented it at GoSF[0] this week.

Example links (scroll down to 'Implements ## Go interfaces' or 'Implemented by
## Go types'):

* What types implement http.ResponseWriter? [https://sourcegraph.com/code.google.com/p/go/symbols/go/code...](https://sourcegraph.com/code.google.com/p/go/symbols/go/code.google.com/p/go/src/pkg/net/http/ResponseWriter:type)

* What types implement io.Writer? [https://sourcegraph.com/code.google.com/p/go/symbols/go/code...](https://sourcegraph.com/code.google.com/p/go/symbols/go/code.google.com/p/go/src/pkg/io/Writer:type)

* What types implement json.Marshaler? [https://sourcegraph.com/code.google.com/p/go/symbols/go/code...](https://sourcegraph.com/code.google.com/p/go/symbols/go/code.google.com/p/go/src/pkg/encoding/json/Marshaler:type)

* What types implement http.Handler? [https://sourcegraph.com/code.google.com/p/go/symbols/go/code...](https://sourcegraph.com/code.google.com/p/go/symbols/go/code.google.com/p/go/src/pkg/net/http/Handler:type)

* What interfaces does crypto/tls.Conn implement? [https://sourcegraph.com/code.google.com/p/go/symbols/go/code...](https://sourcegraph.com/code.google.com/p/go/symbols/go/code.google.com/p/go/src/pkg/crypto/tls/Conn:type)

* What interfaces does *os.File implement? [https://sourcegraph.com/code.google.com/p/go/symbols/go/code...](https://sourcegraph.com/code.google.com/p/go/symbols/go/code.google.com/p/go/src/pkg/os/File:type)

It uses go/types for underlying type analysis.

There's a bug tracker at
[https://github.com/sourcegraph/sourcegraph.com/issues](https://github.com/sourcegraph/sourcegraph.com/issues)
if you see any issues.

[0]
[http://www.meetup.com/golangsf/events/146083272/](http://www.meetup.com/golangsf/events/146083272/)

