Documentation
¶
Overview ¶
Package golang implements import resolution for Go source files.
Index ¶
- type Resolver
- func (r *Resolver) Resolve(srcFile string, fact model.ImportFact, repoRoot string) (model.ResolveResult, error)
- func (r *Resolver) ResolveAll(srcFile string, fact model.ImportFact, repoRoot string) ([]model.ResolveResult, error)
- func (r *Resolver) ResolveSamePackageEdges(srcFile, repoRoot string) []model.ResolveResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Resolver ¶
type Resolver struct {
// contains filtered or unexported fields
}
Resolver resolves Go import paths to repository files using go.mod.
func New ¶
New creates a new Go resolver for the given repository root. It parses go.mod at the root and optionally go.work for multi-module repos.
func (*Resolver) Resolve ¶
func (r *Resolver) Resolve(srcFile string, fact model.ImportFact, repoRoot string) (model.ResolveResult, error)
Resolve maps a Go import to a single repository file (the first result from ResolveAll).
func (*Resolver) ResolveAll ¶
func (r *Resolver) ResolveAll(srcFile string, fact model.ImportFact, repoRoot string) ([]model.ResolveResult, error)
ResolveAll resolves a Go import to all target files in the package directory. Go imports target directories, not individual files, so a single import can resolve to multiple .go files.
func (*Resolver) ResolveSamePackageEdges ¶
func (r *Resolver) ResolveSamePackageEdges(srcFile, repoRoot string) []model.ResolveResult
ResolveSamePackageEdges returns sibling .go files in the same directory as srcFile. These represent Go's implicit same-package visibility.