Skip to main content

Crate temporalio_workflow

Crate temporalio_workflow 

Source
Expand description

Temporal workflow authoring APIs and runtime glue.

Re-exports§

pub use workflows::join_all;
pub use temporalio_common_wasm as common;

Modules§

workflow_interceptors
Intercept inbound and outbound calls made during workflow execution.
workflows
Functionality related to defining and interacting with workflows

Macros§

export_workflow_module
Export one or more workflow implementations as a component-model workflow module.
join
Deterministic join! for use in Temporal workflows.
select
Deterministic select! for use in Temporal workflows.

Structs§

ActivityOptions
Options for scheduling an activity
BaseWorkflowContext
Non-generic base context containing all workflow execution infrastructure.
ChildWorkflowOptions
Options for scheduling a child workflow
ContinueAsNewOptions
Options for continuing a workflow as a new execution.
ExternalWorkflowHandle
Handle to an external workflow for sending signals or requesting cancellation.
LocalActivityOptions
Options for scheduling a local activity
Memo
A collection of memo payloads that can be deserialized into typed values.
MemoValue
A typed value used in a workflow memo update.
MemoValues
A complete set of memo values for a new workflow execution.
NamespacedWorkflowInfo
Information about a parent workflow.
NexusOperationOptions
Options for Nexus Operations
RetryPolicy
Options for retrying workflows and activities.
Signal
Information needed to send a specific signal
SignalData
Data contained within a signal
StartChildWorkflowOutput
Output produced when an intercepted child workflow successfully starts.
StartedChildWorkflow
Child workflow in started state.
StartedNexusOperation
Handle to a started Nexus operation.
SyncWorkflowContext
Context provided to synchronous signal and update handlers.
TimerOptions
Options for timer
WorkflowContext
Used within workflows to issue commands, get info, etc.
WorkflowContextView
Read-only view of workflow context for use in init and query handlers.

Enums§

ActivityCancellationType
Controls when activity cancellation is reported back to a workflow.
ActivityCloseTimeouts
The timeouts applied to an activity’s completion.
ActivityExecutionError
Error type for activity execution outcomes.
ChildWorkflowCancellationType
Controls when child-workflow cancellation is reported to its parent.
ChildWorkflowExecutionError
Error returned when a child workflow execution fails.
ChildWorkflowStartError
Error returned when starting a child workflow fails.
ContinueAsNewVersioningBehavior
Versioning behavior to use for the first workflow task of a new continue-as-new run.
NexusOperationCancellationType
Controls when Nexus operation cancellation is reported to a workflow.
ParentClosePolicy
Controls what happens to a child workflow when its parent closes.
RetryState
Describes why a retry did or did not occur.
StartChildWorkflowExecutionFailedCause
Possible causes of failure to start a child workflow
TimeoutType
Identifies which timeout expired.
TimerResult
Result of awaiting on a timer
VersioningIntent
Selects the worker versioning behavior intended for a command.
WorkflowIdReusePolicy
Controls whether a closed workflow ID may be reused.
WorkflowSignalError
Error returned when signaling a workflow fails.
WorkflowTermination
Represents ways a workflow can terminate without producing a normal result.

Traits§

CancellableFuture
A Future that can be cancelled. Used in the prototype SDK for cancelling operations like timers and activities.
CancellableFutureWithReason
A Future that can be cancelled with a reason
WorkflowRandomValue
A numeric value that can be generated by WorkflowContext::random.

Type Aliases§

WorkflowResult
The result of running a workflow.

Attribute Macros§

init
Marks a method within a #[workflow_methods] impl block as the initialization method. This attribute is processed by the #[workflow_methods] macro and should not be used standalone.
query
Marks a method within a #[workflow_methods] impl block as a query handler. This attribute is processed by the #[workflow_methods] macro and should not be used standalone.
run
Marks a method within a #[workflow_methods] impl block as the main run method. This attribute is processed by the #[workflow_methods] macro and should not be used standalone.
signal
Marks a method within a #[workflow_methods] impl block as a signal handler. This attribute is processed by the #[workflow_methods] macro and should not be used standalone.
update
Marks a method within a #[workflow_methods] impl block as an update handler. This attribute is processed by the #[workflow_methods] macro and should not be used standalone.
update_validator
Marks a method within a #[workflow_methods] impl block as a validator for an update handler. This attribute is processed by the #[workflow_methods] macro and should not be used standalone.
workflow
Marks a struct as a workflow definition.
workflow_methods
Defines workflow methods for a workflow struct. Using this macro requires that you also depend on the temporalio_sdk crate.