RxCommandAsync<TParam, TResult> constructor

RxCommandAsync<TParam, TResult>(AsyncFunc1<TParam, TResult> func, Observable<bool> canExecute, bool emitInitialCommandResult, bool emitLastResult, bool emitsLastValueToNewSubscriptions)

Implementation

factory RxCommandAsync(AsyncFunc1<TParam, TResult> func, Observable<bool> canExecute, bool emitInitialCommandResult,
    bool emitLastResult, bool emitsLastValueToNewSubscriptions) {
  return new RxCommandAsync._(
      func,
      emitsLastValueToNewSubscriptions || emitInitialCommandResult
          ? new BehaviorSubject<CommandResult<TResult>>(
              seedValue: emitInitialCommandResult ? new CommandResult<TResult>(null, null, false) : null)
          : new PublishSubject<CommandResult<TResult>>(),
      canExecute,
      emitLastResult, emitsLastValueToNewSubscriptions);
}