File: Issue807.java

package info (click to toggle)
checker-framework-java 3.2.0%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 22,840 kB
  • sloc: java: 145,910; xml: 839; sh: 518; makefile: 401; perl: 26
file content (20 lines) | stat: -rw-r--r-- 627 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Test case for Issue #807:
// https://github.com/typetools/checker-framework/issues/807

import java.util.function.Consumer;

class Issue807 {

    class MyEntry<K, V> {
        MyEntry(MyEntry<? extends K, ? extends V> e) {}
    }

    <K, V> Consumer<MyEntry<K, V>> entryConsumer(Consumer<? super MyEntry<K, V>> action) {
        // The "new MyEntry" isn't a subtype of "? super MyEntry" in
        // most type systems. Suppress that error, as it's not the
        // point of this test.
        @SuppressWarnings("")
        Consumer<MyEntry<K, V>> res = e -> action.accept(new MyEntry<>(e));
        return res;
    }
}