select_runner

Function select_runner 

Source
pub fn select_runner(language: &Language, packages: &[String]) -> RunnerKind
Expand description

Select the runner for a lesson’s language, threading packages to the Python runner (ADR-0011).

Pure: it maps a Language to a runner with no I/O (§2.1). The match is exhaustive with no wildcard arm, so a new Language variant fails to compile here until it is dispatched explicitly — a language can never silently fall through to the wrong runner. Packages are constructor state on PythonRunner, not a per-call parameter on the Runner trait (§3.4); R ignores them.