code: public static <T extends V, V> Value<V> fromNullable(T value) {
  
          if (value == null) {
              return empty();
          }
  
          return new Value<V>(value);
      }
docs: Creates a {@link Value} from a {@code value}. The resulting value contains the value if the {@code value} is not null.
  
  @param value the value. May be {@literal null}.
  @param <T>
  @param <V>
  @return the {@link Value}