@ Override public < R > Option < R > flatMap ( ThrowableFunction1 < T , Option < R > > function ) { try { return function . apply ( value ) ; } catch ( Throwable ex ) { throw new BrokenFunctionException ( "Caught exception while applying function" , ex ) ; } }
Returns an Option consisting of the result of applying the given function to the current value .