impls

package
v0.2.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 16, 2026 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddImplementationRelationships

func AddImplementationRelationships(
	pkgs loader.PackageLookup,
	allPackages loader.PackageLookup,
	extractor *Extractor,
) ([]*scip.SymbolInformation, error)

Types

type Extractor added in v0.2.4

type Extractor struct {
	// contains filtered or unexported fields
}

func NewExtractor added in v0.2.4

func NewExtractor(global *lookup.Global) *Extractor

func (*Extractor) Extract added in v0.2.4

func (e *Extractor) Extract(pkgLookup loader.PackageLookup) (map[string]ImplDef, map[string]ImplDef)

type ImplDef

type ImplDef struct {
	Symbol  *scip.SymbolInformation
	Named   *types.Named
	Methods map[methodID]*scip.SymbolInformation

	// Precomputed fields for fast filtering before calling types.Implements.
	Mask          uint64 // bitmask of hashed method signatures
	MethodCount   int
	HasUnexported bool   // true if any method is unexported
	PkgPath       string // package path, used to skip cross-package checks for unexported methods
}

Directories

Path Synopsis
Package fingerprint defines a function to Encode types as strings with the property that identical types have equal string encodings, in most cases.
Package fingerprint defines a function to Encode types as strings with the property that identical types have equal string encodings, in most cases.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL