// Code generated by oagen. DO NOT EDIT.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
/// Terminal: the block declared its inputs unsatisfied via
/// ``should_skip_block`` and was skipped. ``reason`` is the skip rationale
/// surfaced by the block's input requirements registry.
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct SkippedBlockExecutionLifecycle {
    /// Defaults to `skipped`.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub status: Option<String>,
    /// Reason the block was skipped
    pub reason: String,
}
impl SkippedBlockExecutionLifecycle {
    /// Construct a new `SkippedBlockExecutionLifecycle` with the required fields set.
    #[allow(deprecated)]
    pub fn new(reason: impl Into<String>) -> Self {
        Self {
            status: Default::default(),
            reason: reason.into(),
        }
    }
}
