code: public <T> Optional<T> answer(Function<String, T> function) {
          return fromNullable(askBuilder.answer(function));
      }
docs: Return user input as Optional<T>
  
  @param function {@link com.google.common.base.Function} or {@link de.eleon.console.builder.functional.Transformer} for value conversion
  @param <T> the return type
  @return user input as Optional<T>