pub enum ActionBodyContract {
Run {
command: String,
},
Command {
capture: CommandBodyCapture,
command: Box<DeclaredCommandContract>,
},
}Expand description
A declarative action body committed into package identity.
Variants§
Run
One command line, executed directly with argv-element parameter
substitution — never through a shell. The text is the authored form
with $ interpolation intact; the executor parses it and substitutes
each referenced parameter as one whole argument.
Command
One DECLARED command (runs command <name>), carried in its emitted
typed form: literal program words, one templated slot per argument,
declared environment bindings, working directory and timeout.
The difference from ActionBodyContract::Run is not spelling. A
Run body is a command LINE that the executor still has to split; a
Command body was split by the AWL emitter at compile time and travels
as an argument list, so nothing downstream ever holds a string that
could be re-split.
Fields
capture: CommandBodyCaptureWhat the action’s result is taken from.
command: Box<DeclaredCommandContract>The emitted command.
Trait Implementations§
Source§impl Clone for ActionBodyContract
impl Clone for ActionBodyContract
Source§fn clone(&self) -> ActionBodyContract
fn clone(&self) -> ActionBodyContract
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ActionBodyContract
impl Debug for ActionBodyContract
Source§impl<'de> Deserialize<'de> for ActionBodyContract
impl<'de> Deserialize<'de> for ActionBodyContract
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for ActionBodyContract
Source§impl PartialEq for ActionBodyContract
impl PartialEq for ActionBodyContract
Source§impl Serialize for ActionBodyContract
impl Serialize for ActionBodyContract
impl StructuralPartialEq for ActionBodyContract
Auto Trait Implementations§
impl Freeze for ActionBodyContract
impl RefUnwindSafe for ActionBodyContract
impl Send for ActionBodyContract
impl Sync for ActionBodyContract
impl Unpin for ActionBodyContract
impl UnsafeUnpin for ActionBodyContract
impl UnwindSafe for ActionBodyContract
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.