Documentation ¶
Overview ¶
Package compile compiles FTL Go module source into a deployable executable.
Index ¶
- func Build(ctx context.Context, projectRootDir, moduleDir string, sch *schema.Schema, ...) (err error)
- func CleanStubs(ctx context.Context, projectRoot string) error
- func ExtractModuleSchema(dir string, sch *schema.Schema) (extract.Result, error)
- func GenerateStubsForModules(ctx context.Context, projectRoot string, ...) error
- func SyncGeneratedStubReferences(ctx context.Context, projectRootDir string, stubbedModules []string, ...) error
- type ExternalModuleContext
- type MainWorkContext
- type ModifyFilesTransaction
- type NativeNames
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Build ¶ added in v0.96.0
func Build(ctx context.Context, projectRootDir, moduleDir string, sch *schema.Schema, filesTransaction ModifyFilesTransaction) (err error)
Build the given module.
func CleanStubs ¶ added in v0.281.2
CleanStubs removes all generated stubs.
func ExtractModuleSchema ¶
ExtractModuleSchema statically parses Go FTL module source into a schema.Module
TODO: once migrated off of the legacy extractor, we can inline `extract.Extract(dir)` and delete this function
func GenerateStubsForModules ¶ added in v0.277.2
func GenerateStubsForModules(ctx context.Context, projectRoot string, moduleConfigs []moduleconfig.ModuleConfig, sch *schema.Schema) error
GenerateStubsForModules generates stubs for all modules in the schema.
func SyncGeneratedStubReferences ¶ added in v0.285.2
func SyncGeneratedStubReferences(ctx context.Context, projectRootDir string, stubbedModules []string, moduleConfigs []moduleconfig.ModuleConfig) error
Types ¶
type ExternalModuleContext ¶ added in v0.155.0
type MainWorkContext ¶ added in v0.277.2
type MainWorkContext struct { GoVersion string }
type ModifyFilesTransaction ¶ added in v0.182.2
type NativeNames ¶ added in v0.119.1
NativeNames is a map of top-level declarations to their native Go names.
Click to show internal directories.
Click to hide internal directories.