#[non_exhaustive]pub struct RunnerConfig {
pub home: PathBuf,
pub processes: Arc<dyn ProcessRunner>,
pub ports: Arc<dyn HostPorts>,
pub clock: Arc<dyn Clock>,
pub host: HostOs,
pub path: Option<String>,
}Expand description
How a runner is built: its home, and the ports it reaches the world through.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.home: PathBufThe runner’s home (runs/ under it). The launcher passes its app data folder; the
isothrum command line uses ~/.isothrum.
processes: Arc<dyn ProcessRunner>Starts the tools.
ports: Arc<dyn HostPorts>The host’s ports.
clock: Arc<dyn Clock>The time.
host: HostOsThe host’s operating system (it picks per-host argv and filters steps).
path: Option<String>The tools’ PATH, where the macOS relays look for the real ovftool and put their
wrapper first (default: the runner’s own).
Implementations§
Source§impl RunnerConfig
impl RunnerConfig
Sourcepub fn new(home: impl Into<PathBuf>) -> RunnerConfig
pub fn new(home: impl Into<PathBuf>) -> RunnerConfig
A runner at home on this host: real processes, the loopback, the system’s clock.
Source§impl RunnerConfig
impl RunnerConfig
Sourcepub fn with_processes(self, processes: Arc<dyn ProcessRunner>) -> RunnerConfig
pub fn with_processes(self, processes: Arc<dyn ProcessRunner>) -> RunnerConfig
Starts the tools through processes (a fake in tests).
Sourcepub fn with_ports(self, ports: Arc<dyn HostPorts>) -> RunnerConfig
pub fn with_ports(self, ports: Arc<dyn HostPorts>) -> RunnerConfig
Reads the host’s ports through ports.
Sourcepub fn with_clock(self, clock: Arc<dyn Clock>) -> RunnerConfig
pub fn with_clock(self, clock: Arc<dyn Clock>) -> RunnerConfig
Reads the time from clock.
Trait Implementations§
Source§impl Clone for RunnerConfig
impl Clone for RunnerConfig
Auto Trait Implementations§
impl !RefUnwindSafe for RunnerConfig
impl !UnwindSafe for RunnerConfig
impl Freeze for RunnerConfig
impl Send for RunnerConfig
impl Sync for RunnerConfig
impl Unpin for RunnerConfig
impl UnsafeUnpin for RunnerConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more