Branching
Last updated
Was this helpful?
Last updated
Was this helpful?
Branching allows your flows to make decisions based on conditions, directing execution along different paths depending on the given input. The If
node is commonly used for this purpose, allowing you to define logic where execution follows one path if a condition is met and another if it is not.
Generating a Value: In the example above, the Random
node produces a number between 0
and 10
, which is sent to the If
node.
Evaluating a Condition: The If
node checks if the value is greater than 5
using the predicate
input.
Branching Execution: If true, execution follows the then
path; if false, it follows the else
path.
Logging the Result: One of the Log
nodes prints either “Value is large” or “Value is small” based on the condition.
There are several other branching nodes, wich support various use-cases:
- is used to select one of two values based in two potentially incoming paths
- is used to select a fallback value when you have a value which can potentially be null.
- is used to create an arbitrary number of branches based on a list of potential values.
// - these nodes can be used to fork a flow into multiple independenc processes, which execute concurrently and can be joined together again using Std Join and .