#[non_exhaustive]pub struct ChildRunInput {Show 13 fields
pub workflow_run_id: String,
pub persistence: Arc<dyn WorkflowPersistence>,
pub action_registry: Arc<ActionRegistry>,
pub item_provider_registry: Arc<ItemProviderRegistry>,
pub script_env_provider: Arc<dyn ScriptEnvProvider>,
pub child_runner: Option<Arc<dyn ChildWorkflowRunner>>,
pub schema_resolver: Option<Arc<dyn Fn(&str) -> Result<OutputSchema> + Send + Sync>>,
pub as_identity: Option<String>,
pub depth: u32,
pub cancellation: CancellationToken,
pub target_label: Option<String>,
pub triggered_by_hook: bool,
pub inputs_override: Option<HashMap<String, String>>,
}Expand description
Inputs for running a child workflow from a ChildWorkflowRunner implementation.
Pairs with ChildWorkflowContext (projected from the parent run) to supply fields
that the parent context does not carry. Pass to FlowEngine::run_child.
Note on child_runner: pass Some(Arc::clone(&self_runner)) from a
ChildWorkflowRunner::execute_child implementation so grandchild workflow calls work.
A None value produces a child run that cannot fan out further.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.workflow_run_id: StringThe pre-created child run ID (from persistence).
persistence: Arc<dyn WorkflowPersistence>§action_registry: Arc<ActionRegistry>§item_provider_registry: Arc<ItemProviderRegistry>§script_env_provider: Arc<dyn ScriptEnvProvider>§child_runner: Option<Arc<dyn ChildWorkflowRunner>>Re-inject the same runner for grandchild support; None disables further nesting.
schema_resolver: Option<Arc<dyn Fn(&str) -> Result<OutputSchema> + Send + Sync>>§as_identity: Option<String>Maps to ExecutionState::default_as_identity.
depth: u32§cancellation: CancellationToken§target_label: Option<String>§triggered_by_hook: bool§inputs_override: Option<HashMap<String, String>>When Some, replaces the parent context’s inputs; when None, parent inputs flow through.
Implementations§
Source§impl ChildRunInput
impl ChildRunInput
Sourcepub fn new(
workflow_run_id: String,
persistence: Arc<dyn WorkflowPersistence>,
action_registry: Arc<ActionRegistry>,
item_provider_registry: Arc<ItemProviderRegistry>,
script_env_provider: Arc<dyn ScriptEnvProvider>,
depth: u32,
cancellation: CancellationToken,
) -> Self
pub fn new( workflow_run_id: String, persistence: Arc<dyn WorkflowPersistence>, action_registry: Arc<ActionRegistry>, item_provider_registry: Arc<ItemProviderRegistry>, script_env_provider: Arc<dyn ScriptEnvProvider>, depth: u32, cancellation: CancellationToken, ) -> Self
Construct a ChildRunInput with required fields; all optional/defaultable fields are zeroed.
Use direct field assignment (input.as_identity = Some(...)) to set any optional fields.