execute method

  1. @override
FutureOr<Step?> execute(
  1. FlowController controller, [
  2. FutureOr<Step?> candidate()?
])
override

Executes the builder function until an escape prompt is received.

Increases the FlowContext's depth and runs steps.

If closed the function will return it's given candidate or null.

Implementation

@override
FutureOr<Step?> execute(
    final FlowController controller, [
      FutureOr<Step?> candidate()?,
    ]) async {
  await controller.createBubble(() => !leave ? builder() : null);
  final none = () => null;
  return (candidate ?? none)();
}