invoke method

  1. @override
Future<RunOutput> invoke(
  1. RunInput input, {
  2. RunnableOptions? options,
})
override

Invokes the RunnableSequence on the given input.

Implementation

@override
Future<RunOutput> invoke(
  final RunInput input, {
  final RunnableOptions? options,
}) async {
  Object? nextStepInput = input;

  for (final step in [first, ...middle]) {
    nextStepInput = await step.invoke(
      nextStepInput,
      options: step.getCompatibleOptions(options),
    );
  }

  return last.invoke(
    nextStepInput,
    options: last.getCompatibleOptions(options),
  );
}