Skip to main content

Module phase

Module phase 

Source
Expand description

The phase graph: what has to happen to each input file, in what order, and where the result goes.

Design: spec/04-driver-and-cli.md section 4.2.

The plan is computed before anything runs and is a plain data structure with no side effects, which is what makes -### possible and what makes this testable without a file system. Nothing in here reads a file or spawns a process. Executing the plan is M3, when there is something for the phases to do.

Structs§

Input
One input file, with the -x setting that was in effect where it appeared.
Job
Everything that has to happen to one input file.
LinkJob
The link step, when there is one.
Plan
The whole plan for one invocation.
PlanError
Why a command line could not be turned into a plan.

Enums§

InputKind
What an input file is, which decides where in the pipeline it enters.
Output
Where the result of a job goes.
Phase
A step in the compilation of one input.
XError
Why an input or an -x argument was rejected.

Functions§

last_phase
The last phase that runs, given what the user asked to be emitted.