(opt) add Optional::transform, allowing an arbitrary operation on an Optional

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Unresolved
    • Priority: P4
    • tbd
    • Affects Version/s: None
    • Component/s: core-libs
    • None

      Add a method something like this to Optional:

          public <R> R transform(Function<Optional<T>, ? extends R> f) {
              return f.apply(this);
          }

      This allows the caller to provide an arbitrary operation to be performed on "this" Optional, regardless of whether it's empty or present. The name "transform" follows precedent set by String::transform (JDK-8203442).

            Assignee:
            Stuart Marks
            Reporter:
            Stuart Marks
            Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: