Documentation ¶
Overview ¶
Package analysis defines interfaces used to locate and analyze compilation units and their inputs.
The CompilationAnalyzer interface represents a generic analysis process that processes kythe.proto.CompilationUnit messages and their associated inputs. The Fetcher interface expresses the ability to fetch required files from storage based on their corpus-relative paths and digests.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CompilationAnalyzer ¶ added in v0.0.8
type CompilationAnalyzer interface { // Analyze calls f on each analysis output resulting from the analysis of the // given apb.CompilationUnit. If f returns an error, f is no longer called // and Analyze returns with the same error. Analyze(ctx context.Context, req *apb.AnalysisRequest, f OutputFunc) error }
A CompilationAnalyzer processes compilation units and delivers output artifacts to a user-supplied callback function.
type Fetcher ¶
type Fetcher interface { // Fetch retrieves the contents of a single file. At least one of path and // digest must be provided; both are preferred. The implementation may // return an error if both are not set. Fetch(path, digest string) ([]byte, error) }
A Fetcher provides the ability to fetch file contents from storage.
type OutputFunc ¶ added in v0.0.8
type OutputFunc func(context.Context, *apb.AnalysisOutput) error
OutputFunc handles a single AnalysisOutput.
func EntryOutput ¶ added in v0.0.8
EntryOutput returns an OutputFunc that unmarshals each output's value as an Entry and calls f on it.
Directories ¶
Path | Synopsis |
---|---|
Package driver contains a Driver implementation that sends analyses to a CompilationAnalyzer based on a Queue of compilations.
|
Package driver contains a Driver implementation that sends analyses to a CompilationAnalyzer based on a Queue of compilations. |
Package local implements CompilationAnalyzer utilities for local analyses.
|
Package local implements CompilationAnalyzer utilities for local analyses. |
Package remote contains kythe/go/platform/analysis implementations backed by remote RPC servers.
|
Package remote contains kythe/go/platform/analysis implementations backed by remote RPC servers. |