Compare commits

...

4 Commits

Author SHA1 Message Date
Andreas Stadelmeier
21aa7e0e9c Merge branch 'master' into removeWildcards 2024-12-18 00:44:19 +01:00
Andreas Stadelmeier
bc4d7d1bc9 Remove further wildcards from Collectors 2024-12-17 20:39:01 +01:00
Andreas Stadelmeier
7c06bd67df Merge branch 'master' into removeWildcards 2024-12-17 16:35:03 +01:00
Andreas Stadelmeier
849209b8cb Set Source/Release Version to 24 always and remove Wildcards from Collectors.toList and toSet 2024-12-17 15:36:28 +01:00
3 changed files with 21 additions and 22 deletions

View File

@ -222,7 +222,7 @@ public final class Collectors {
* {@code Collection}, in encounter order
*/
public static <T, C extends Collection<T>>
Collector<T, ?, C> toCollection(Supplier<C> collectionFactory) {
Collector<T, C, C> toCollection(Supplier<C> collectionFactory) {
return new CollectorImpl<>(collectionFactory, Collection::add,
(r1, r2) -> { r1.addAll(r2); return r1; },
CH_ID);
@ -239,7 +239,7 @@ public final class Collectors {
* {@code List}, in encounter order
*/
public static <T>
Collector<T, ?, List<T>> toList() {
Collector<T, ArrayList<Object>, List<T>> toList() {
return new CollectorImpl<>(ArrayList::new, List::add,
(left, right) -> { left.addAll(right); return left; },
CH_ID);
@ -257,7 +257,7 @@ public final class Collectors {
* @since 10
*/
public static <T>
Collector<T, ?, List<T>> toUnmodifiableList() {
Collector<T, ArrayList<Object>, List<T>> toUnmodifiableList() {
return new CollectorImpl<>(ArrayList::new, List::add,
(left, right) -> { left.addAll(right); return left; },
list -> {
@ -286,7 +286,7 @@ public final class Collectors {
* {@code Set}
*/
public static <T>
Collector<T, ?, Set<T>> toSet() {
Collector<T, HashSet<Object>, Set<T>> toSet() {
return new CollectorImpl<>(HashSet::new, Set::add,
(left, right) -> {
if (left.size() < right.size()) {
@ -315,7 +315,7 @@ public final class Collectors {
*/
@SuppressWarnings("unchecked")
public static <T>
Collector<T, ?, Set<T>> toUnmodifiableSet() {
Collector<T, HashSet<Object>, Set<T>> toUnmodifiableSet() {
return new CollectorImpl<>(HashSet::new, Set::add,
(left, right) -> {
if (left.size() < right.size()) {
@ -335,7 +335,7 @@ public final class Collectors {
* @return a {@code Collector} that concatenates the input elements into a
* {@code String}, in encounter order
*/
public static Collector<CharSequence, ?, String> joining() {
public static Collector<CharSequence, StringBuilder, String> joining() {
return new CollectorImpl<>(
StringBuilder::new, StringBuilder::append,
(r1, r2) -> {
@ -353,7 +353,7 @@ public final class Collectors {
* @return A {@code Collector} which concatenates CharSequence elements,
* separated by the specified delimiter, in encounter order
*/
public static Collector<CharSequence, ?, String> joining(CharSequence delimiter) {
public static Collector<CharSequence, StringJoiner, String> joining(CharSequence delimiter) {
return joining(delimiter, "", "");
}
@ -370,7 +370,7 @@ public final class Collectors {
* @return A {@code Collector} which concatenates CharSequence elements,
* separated by the specified delimiter, in encounter order
*/
public static Collector<CharSequence, ?, String> joining(CharSequence delimiter,
public static Collector<CharSequence, StringJoiner, String> joining(CharSequence delimiter,
CharSequence prefix,
CharSequence suffix) {
return new CollectorImpl<>(
@ -428,7 +428,7 @@ public final class Collectors {
* elements and provides the mapped results to the downstream collector
*/
public static <T, U, A, R>
Collector<T, ?, R> mapping(Function<? super T, ? extends U> mapper,
Collector<T, A, R> mapping(Function<? super T, ? extends U> mapper,
Collector<? super U, A, R> downstream) {
BiConsumer<A, ? super U> downstreamAccumulator = downstream.accumulator();
return new CollectorImpl<>(downstream.supplier(),
@ -473,7 +473,7 @@ public final class Collectors {
* @since 9
*/
public static <T, U, A, R>
Collector<T, ?, R> flatMapping(Function<? super T, ? extends Stream<? extends U>> mapper,
Collector<T, A, R> flatMapping(Function<? super T, ? extends Stream<? extends U>> mapper,
Collector<? super U, A, R> downstream) {
BiConsumer<A, ? super U> downstreamAccumulator = downstream.accumulator();
return new CollectorImpl<>(downstream.supplier(),
@ -904,9 +904,8 @@ public final class Collectors {
}
}
}
return new CollectorImpl<>(
OptionalBox::new, OptionalBox::accept,
OptionalBox::new, Consumer<T>::accept,
(a, b) -> {
if (b.present) a.accept(b.value);
return a;
@ -952,7 +951,7 @@ public final class Collectors {
* @see #reducing(BinaryOperator)
*/
public static <T, U>
Collector<T, ?, U> reducing(U identity,
Collector<T, U[], U> reducing(U identity,
Function<? super T, ? extends U> mapper,
BinaryOperator<U> op) {
return new CollectorImpl<>(
@ -1102,7 +1101,7 @@ public final class Collectors {
* @see #groupingByConcurrent(Function, Supplier, Collector)
*/
public static <T, K, D, A, M extends Map<K, D>>
Collector<T, ?, M> groupingBy(Function<? super T, ? extends K> classifier,
Collector<T, Map<K,A>, M> groupingBy(Function<? super T, ? extends K> classifier,
Supplier<M> mapFactory,
Collector<? super T, A, D> downstream) {
Supplier<A> downstreamSupplier = downstream.supplier();
@ -1260,7 +1259,7 @@ public final class Collectors {
* @see #groupingBy(Function, Supplier, Collector)
*/
public static <T, K, A, D, M extends ConcurrentMap<K, D>>
Collector<T, ?, M> groupingByConcurrent(Function<? super T, ? extends K> classifier,
Collector<T, ConcurrentMap<K,A>, M> groupingByConcurrent(Function<? super T, ? extends K> classifier,
Supplier<M> mapFactory,
Collector<? super T, A, D> downstream) {
Supplier<A> downstreamSupplier = downstream.supplier();
@ -1438,7 +1437,7 @@ public final class Collectors {
* @see #toConcurrentMap(Function, Function)
*/
public static <T, K, U>
Collector<T, ?, Map<K,U>> toMap(Function<? super T, ? extends K> keyMapper,
Collector<T, Map<K,U>, Map<K,U>> toMap(Function<? super T, ? extends K> keyMapper,
Function<? super T, ? extends U> valueMapper) {
return new CollectorImpl<>(HashMap::new,
uniqKeysMapAccumulator(keyMapper, valueMapper),

View File

@ -295,7 +295,7 @@ public class Arguments {
* @return true if successful, false otherwise
*/
public boolean handleReleaseOptions(Predicate<Iterable<String>> additionalOptions) {
String platformString = options.get(Option.RELEASE);
String platformString = options.get("24");
checkOptionAllowed(platformString == null,
option -> reportDiag(Errors.ReleaseBootclasspathConflict(option)),

View File

@ -341,15 +341,15 @@ public class ToolOptions {
new ToolOption("--release", STANDARD, true) {
@Override
public void process(String arg) throws InvalidValueException {
processCompilerOption(Option.RELEASE, primaryName, arg);
processCompilerOption(Option.RELEASE, primaryName, "24");
}
},
new ToolOption("--source -source", STANDARD, true) {
@Override
public void process(String arg) throws InvalidValueException {
processCompilerOption(Option.SOURCE, primaryName, arg);
processCompilerOption(Option.TARGET, Option.TARGET.primaryName, arg);
//processCompilerOption(Option.SOURCE, primaryName, arg);
//processCompilerOption(Option.TARGET, Option.TARGET.primaryName, arg);
}
},