pub struct FsExecutor { /* private fields */ }Expand description
Wet-run ActionExecutor — performs real filesystem and process work.
Dispatch is registry-driven (M4-B S1): every action is resolved to an
crate::plugin::ActionPlugin via the embedded Registry and the
plugin’s execute method is invoked. The registry is wrapped in an
Arc so the executor stays Clone and cheap to share across
threads; cloning the executor bumps a refcount rather than duplicating
plugin state.
Callers are responsible for driving the sequence (plan-phase validators,
ordering, rollback on failure); FsExecutor operates on one action at a
time and never looks at peers.
Implementations§
Source§impl FsExecutor
impl FsExecutor
Sourcepub fn new() -> Self
pub fn new() -> Self
Construct a fresh wet-run executor backed by the full Tier-1
built-in registry (Registry::bootstrap). Equivalent to the
pre-M4-B signature; existing test sites continue to compile.
Sourcepub fn with_registry(registry: Arc<Registry>) -> Self
pub fn with_registry(registry: Arc<Registry>) -> Self
Construct a wet-run executor backed by an explicit registry.
Used by the sync driver (which builds one registry at CLI entry
and shares it across executors) and by tests that need to exercise
the ExecError::UnknownAction path or shadow a built-in. For
typical call sites the bootstrapped FsExecutor::new is the
right default.
Trait Implementations§
Source§impl ActionExecutor for FsExecutor
impl ActionExecutor for FsExecutor
Source§impl Clone for FsExecutor
impl Clone for FsExecutor
Source§fn clone(&self) -> FsExecutor
fn clone(&self) -> FsExecutor
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more