Class WorkflowOutputBuilder
- Namespace
- Bonsai.Expressions
- Assembly
- Bonsai.Core.dll
Represents the expression that is used as the output of an encapsulated workflow.
The WorkflowOutput
operator is used inside nested workflows to specify the sequence of notifications providing the result of the nested function. In each workflow there can only be at most one WorkflowOutput
node. How this result sequence is converted into the sequence of notifications of the outer nesting node is dependent on the exact operator in which the output is nested.
If no WorkflowOutput
is specified, the result sequence of any nested workflow (including the top-level workflow) will be of type Unit and will not emit any notifications except for successful termination if all inner sequences terminate successfully, or exceptional termination if any of the inner sequences raises an error.
Note
If the sequence connected to WorkflowOutput
terminates successfully, all other nested operators will be immediately cancelled. This is also true for the top-level workflow, in which case the entire program execution is terminated.
[WorkflowElementCategory(ElementCategory.Sink)]
public class WorkflowOutputBuilder : SingleArgumentExpressionBuilder, IExpressionBuilder
- Inheritance
-
WorkflowOutputBuilder
- Implements
- Inherited Members
- Extension Methods
Methods
Build(IEnumerable<Expression>)
Returns the single output expression specified in arguments
.
public override Expression Build(IEnumerable<Expression> arguments)
Parameters
arguments
IEnumerable<Expression>
Returns
- Expression
- A collection of Expression nodes that represents the input arguments. An Expression that will be used as the output of an encapsulated workflow.