public open fun onStep()

in libraries/rib-workflow/src/main/kotlin/com/uber/rib/workflow/core/Step.kt [50:67]


  public open fun <T2, A2 : ActionableItem> onStep(
    func: BiFunction<T, A, Step<T2, A2>>,
  ): Step<T2, A2> {
    return Step(
      asObservable()
        .flatMap { optionalData: Optional<Data<T, A>> ->
          if (optionalData.isPresent) {
            val data = optionalData.get()
            val value =
              checkNotNull(data.getValue()) { "RxJava BiFunction can't accept null values." }
            func.apply(value, data.actionableItem).asObservable()
          } else {
            Observable.just(Optional.absent())
          }
        }
        .singleOrError(),
    )
  }