pub struct HookConfig {
pub enabled: bool,
pub parallel: bool,
pub commands: Vec<CommandEntry>,
}Fields§
§enabled: boolWhether this hook is active. Set to false to temporarily disable.
parallel: boolRun commands concurrently within each dependency wave.
When true, commands that have no dependency relationship are started at
the same time in separate threads. Commands that share a depends link
are still serialised — the dependent command waits until all its
dependencies finish successfully.
Use this to speed up independent checks (e.g. lint + test) while keeping ordered steps (e.g. build → deploy) sequential.
Example:
hooks:
pre-push:
parallel: true
commands:
- name: lint
run: cargo clippy
- name: test
run: cargo test # runs at the same time as lintcommands: Vec<CommandEntry>Commands to run when this hook fires.
Each entry is either an inline command or a $ref to a definition.
Implementations§
Source§impl HookConfig
impl HookConfig
Sourcepub fn resolved_commands<'a>(
&'a self,
definitions: &'a BTreeMap<String, DefinitionEntry>,
) -> Vec<Command>
pub fn resolved_commands<'a>( &'a self, definitions: &'a BTreeMap<String, DefinitionEntry>, ) -> Vec<Command>
Resolve all command entries to concrete Commands by expanding $ref entries
using the given definitions map. Unknown refs are silently skipped.
Trait Implementations§
Source§impl Clone for HookConfig
impl Clone for HookConfig
Source§fn clone(&self) -> HookConfig
fn clone(&self) -> HookConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for HookConfig
impl Debug for HookConfig
Source§impl<'de> Deserialize<'de> for HookConfig
impl<'de> Deserialize<'de> for HookConfig
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for HookConfig
impl JsonSchema for HookConfig
Source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for HookConfig
impl RefUnwindSafe for HookConfig
impl Send for HookConfig
impl Sync for HookConfig
impl Unpin for HookConfig
impl UnsafeUnpin for HookConfig
impl UnwindSafe for HookConfig
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