...
Package pkgfact
import "golang.org/x/tools/go/analysis/passes/pkgfact"
- Overview
- Index
The pkgfact package is a demonstration and test of the package fact
mechanism.
The output of the pkgfact analysis is a set of key/values pairs
gathered from the analyzed package and its imported dependencies.
Each key/value pair comes from a top-level constant declaration
whose name starts and ends with "_". For example:
package p
const _greeting_ = "hello"
const _audience_ = "world"
the pkgfact analysis output for package p would be:
{"greeting": "hello", "audience": "world"}.
In addition, the analysis reports a diagnostic at each import
showing which key/value pairs it contributes.
Variables
var Analyzer = &analysis.Analyzer{
Name: "pkgfact",
Doc: "gather name/value pairs from constant declarations",
URL: "https://pkg.go.dev/golang.org/x/tools/go/analysis/passes/pkgfact",
Run: run,
FactTypes: []analysis.Fact{new(pairsFact)},
ResultType: reflect.TypeOf(map[string]string{}),
}