> On 7 Oct 2016, at 12:22, Stuart Marks <[email protected]> wrote: > > > > On 10/7/16 11:23 AM, Paul Sandoz wrote: >>> flatMap(Function<? super T, ? extends Optional<? extends U>> mapper) >> >> Optional is final so why do you need to express “? extends Optional” ? > > The short answer is, it doesn't work if you don't have it. :-) >
I thought as much :-) > The theoretical answer is that in this context, "? extends P<Q>" means "some > subtype of P<Q>" and not necessarily just a subclass of P. > Doh!, yes, that makes sense. Thanks for the detailed explanation. Fix looks good. Paul.
