diff --git a/cmd/internal/pkgsite-cli/client/client.go b/cmd/internal/pkgsite-cli/client/client.go
index d964455..7727ab4 100644
--- a/cmd/internal/pkgsite-cli/client/client.go
+++ b/cmd/internal/pkgsite-cli/client/client.go
@@ -199,6 +199,7 @@
Module string
GOOS string
GOARCH string
+ Kind string
PaginationOptions
}
@@ -216,6 +217,9 @@
if opts.GOARCH != "" {
q.Set("goarch", opts.GOARCH)
}
+ if opts.Kind != "" {
+ q.Set("kind", opts.Kind)
+ }
if opts.Limit > 0 {
q.Set("limit", strconv.Itoa(opts.Limit))
}
diff --git a/cmd/internal/pkgsite-cli/package.go b/cmd/internal/pkgsite-cli/package.go
index d9c600f..cdd8b5f 100644
--- a/cmd/internal/pkgsite-cli/package.go
+++ b/cmd/internal/pkgsite-cli/package.go
@@ -60,6 +60,7 @@
Module: p.module,
GOOS: p.goos,
GOARCH: p.goarch,
+ Kind: p.kind,
PaginationOptions: client.PaginationOptions{
Limit: limit,
Token: token,
@@ -125,6 +126,7 @@
module string
goos string
goarch string
+ kind string
}
func (f *packageFlags) register(fs *flag.FlagSet) {
@@ -134,6 +136,7 @@
fs.BoolVar(&f.imports, "imports", false, "list imported packages")
fs.BoolVar(&f.importedBy, "imported-by", false, "list reverse dependencies")
fs.BoolVar(&f.symbols, "symbols", false, "list exported symbols")
+ fs.StringVar(&f.kind, "kind", "", "include only symbols of this kind: constant, variable, function, type, field, or method (requires -symbols)")
fs.BoolVar(&f.licenses, "licenses", false, "show license information")
fs.StringVar(&f.module, "module", "", "disambiguate module path")
}