Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type DependencyReader ¶
DependencyReader produces directed edges from a codebase, grouped by tree prefix (e.g., "lib", "internal").
type GoListReader ¶
GoListReader reads Go package dependencies by shelling out to `go list`. ModulePath is the Go module path (e.g., "code.linenisgreat.com/dodder/go"). Dir is the working directory to run `go list` from. PackagePrefixes are directory prefixes containing packages (e.g., ["lib", "internal"]). Node names in returned edges include the prefix (e.g., "lib/0/ohio_buffer").
func (GoListReader) ReadDependencies ¶
func (goListReader GoListReader) ReadDependencies() (map[string][]Edge, error)
type JustMover ¶
type JustMover struct {
Dir string
}
JustMover moves packages by shelling out to `just codemod-go-move_package`. Dir is the working directory containing the justfile.
func (JustMover) MovePackage ¶
type LevelMapper ¶
LevelMapper assigns names to topological heights. Height 0 is the lowest level (no internal dependencies).
type NATOLevelMapper ¶
type NATOLevelMapper struct{}
func MakeNATOLevelMapper ¶
func MakeNATOLevelMapper() NATOLevelMapper
type PackageMover ¶
PackageMover executes the move of a package from one path to another.
type Repositioner ¶
type Repositioner struct {
Reader DependencyReader
Mapper LevelMapper
Mover PackageMover
DryRun bool
Verbose bool
}
Repositioner orchestrates dependency reading, topological sorting, level mapping, and package moving.
func (*Repositioner) Run ¶
func (repositioner *Repositioner) Run() error