@Override
    public <R> Option<R> map(ThrowableFunction1<T, R> f) {
        return flatMap(v -> Option.apply(f.apply(v)));
    }
@Override
    public <R> Option<R> map(ThrowableFunction1<T, R> f) {
        return flatMap(v -> Option.apply(f.apply(v)));
    }
@ Override public < R > Option < R > map ( ThrowableFunction1 < T , R > f ) { return flatMap ( v -> Option . apply ( f . apply ( v ) ) ) ; }
Returns an {@link Option} containing the value of applying the given function to the current value.

@since 1.0
Returns an { @link Option } containing the value of applying the given function to the current value .