FCancellationExecutionContext constructor

FCancellationExecutionContext(
  1. FExecutionContext prevContext,
  2. FCancellationToken cancellationToken, [
  3. bool isAggregateWithPrev = false
])

Implementation

factory FCancellationExecutionContext(
  FExecutionContext prevContext,
  FCancellationToken cancellationToken, [
  bool isAggregateWithPrev = false,
]) {
  if (isAggregateWithPrev) {
    final FCancellationExecutionContext? prev =
        FExecutionContext.findExecutionContext<FCancellationExecutionContext>(
            prevContext);
    if (prev != null) {
      return FCancellationExecutionContext._(
        prevContext,
        FCancellationTokenAggregated(
          [cancellationToken, prev.cancellationToken],
        ),
      );
    }
  }

  return FCancellationExecutionContext._(prevContext, cancellationToken);
}