cargo::core::compiler

Function compile

source
fn compile<'gctx>(
    build_runner: &mut BuildRunner<'_, 'gctx>,
    jobs: &mut JobQueue<'gctx>,
    plan: &mut BuildPlan,
    unit: &Unit,
    exec: &Arc<dyn Executor>,
    force_rebuild: bool,
) -> CargoResult<()>
Expand description

Builds up and enqueue a list of pending jobs onto the job queue.

Starting from the unit, this function recursively calls itself to build all jobs for dependencies of the unit. Each of these jobs represents compiling a particular package.

Note that no actual work is executed as part of this, that’s all done next as part of JobQueue::execute function which will run everything in order with proper parallelism.