# Functions

AnalyzePackages analyzes code packages using Go module package resolution.
BuildPackageName builds the unique name for the package.
BuildPlugin builds a plugin using a temporary code-gen path.
CleanupOldVersions cleans up old versions from the target path.
CodegenPluginWrapperFromAnalysis codegens a plugin wrapper from analysis.
CompilePluginFromFile compiles the plugin from the gfile.
FormatFile formats the output file.
GeneratePluginWrapper generates a wrapper package for a list of packages containing controller factories.
HashPluginForBuildID hashes a plugin to use for build id.
NewModuleCompiler constructs a new module compiler with paths.
NewWatcher constructs a new watcher.

# Structs

Analysis contains the result of code analysis.
ModuleCompiler assembles a series of Go module files on disk to orchestrate "go build" commands and produce a plugin with unique import paths for the changed packages.
Watcher watches a set of packages and re-generates an output plugin codegen and binary when the code files change.