/
githubmirror
/
panama-vector
Обзор
Документация
Войти
/
githubmirror
/
panama-vector
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/langtools/tools/javac/lambda/8074381/T8074381b.java
44 строки
1 KB
Erik Joelsson
8187443: Forest Consolidation: Move files to unified layout
12 сен 2017, 20:03
12 сен 2017, 20:03
3789983
Код
Авторство
О чём код?
/* * @test /nodynamiccopyright/ * @bug 8074381 * @summary java.lang.AssertionError during compiling * @compile/fail/ref=T8074381b.out -XDrawDiagnostics T8074381b.java */ import java.util.function.BiConsumer; import java.util.function.Consumer; class T8074381b { @SuppressWarnings("unchecked") public Invocation resolve(Handler handler) { return new Invocation((t) -> handler.handle((String) t)); } public static class Handler { public void handle(String s) { System.out.println(s); } } public static class Invocation<T> { public final ThrowingConsumer<T> consumer; public Invocation(final ThrowingConsumer<T> consumer) { this.consumer = consumer; } } @FunctionalInterface public interface ThrowingConsumer<T> extends BiConsumer<T,Consumer<Throwable>> { @Override default void accept(final T elem, final Consumer<Throwable> errorHandler) { try { acceptThrows(elem); } catch (final Throwable e) { errorHandler.accept(e); } } void acceptThrows(T elem) throws Throwable; } }