https://github.com/nu50218/impls
a CLI tool to find implementation and interface each other
https://github.com/nu50218/impls
go golang tool
Last synced: 5 months ago
JSON representation
a CLI tool to find implementation and interface each other
- Host: GitHub
- URL: https://github.com/nu50218/impls
- Owner: nu50218
- License: bsd-3-clause
- Created: 2020-09-03T02:42:32.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2022-03-11T01:49:03.000Z (over 4 years ago)
- Last Synced: 2024-06-20T16:48:27.593Z (about 2 years ago)
- Topics: go, golang, tool
- Language: Go
- Homepage:
- Size: 73.2 KB
- Stars: 9
- Watchers: 3
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# impls
[](https://github.com/nu50218/impls/releases)
[](https://goreportcard.com/report/github.com/nu50218/impls)
implsはinterfaceの実装を見つけたり、実装からinterfaceを見つけたりできるツールです。
## Install
`$ go install github.com/nu50218/impls@latest`
## Usage
- interfaceから型を見つける
```go
$ impls types go/ast.Expr
/usr/local/go/src/go/ast/ast.go:411:2 ast.ArrayType
/usr/local/go/src/go/ast/ast.go:268:2 ast.BadExpr
/usr/local/go/src/go/ast/ast.go:288:2 ast.BasicLit
︙
```
- interfaceから変数を見つける
```go
$ impls vars error fmt
/usr/local/go/src/fmt/scan.go:466:5 fmt.boolError
/usr/local/go/src/fmt/scan.go:465:5 fmt.complexError
```
- 型からinterfaceを見つける
いずれのサブコマンドも第四引数以降にロードさせたいパッケージを渡すことができます。
```go
$ impls interfaces bytes.Buffer io
/usr/local/go/src/io/io.go:243:6 io.ByteReader
/usr/local/go/src/io/io.go:254:6 io.ByteScanner
/usr/local/go/src/io/io.go:260:6 io.ByteWriter
/usr/local/go/src/io/io.go:120:6 io.ReadWriter
/usr/local/go/src/io/io.go:77:6 io.Reader
/usr/local/go/src/io/io.go:170:6 io.ReaderFrom
/usr/local/go/src/io/io.go:269:6 io.RuneReader
/usr/local/go/src/io/io.go:280:6 io.RuneScanner
/usr/local/go/src/io/io.go:286:6 io.StringWriter
/usr/local/go/src/io/io.go:90:6 io.Writer
/usr/local/go/src/io/io.go:181:6 io.WriterTo
```
- help
`$ impls help`
`$ impls help types`