/* package whatever; // don't place package name! */
import java.util.function.Supplier;
import java.util.stream.Collectors;
import java.util.stream.Stream;
class Tmp {
static <T
> T readValue
(Supplier
<T
> s, Class
<T
> type
) throws Exception { return s.get();
}
interface Source extends Supplier<String>, AutoCloseable {
public default void close
() throws Exception {} }
public static void main
(String[] args
) { Stream.of("one", "two", "three")
.map(s -> {
try(Source source = () -> s) {
return readValue
(source,
String.
class); }
return null;
}
})
.
forEach(System.
out::println
); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKCgppbXBvcnQgamF2YS51dGlsLmZ1bmN0aW9uLlN1cHBsaWVyOwppbXBvcnQgamF2YS51dGlsLnN0cmVhbS5Db2xsZWN0b3JzOwppbXBvcnQgamF2YS51dGlsLnN0cmVhbS5TdHJlYW07CgpjbGFzcyBUbXAgewogICAgc3RhdGljIDxUPiBUIHJlYWRWYWx1ZShTdXBwbGllcjxUPiBzLCBDbGFzczxUPiB0eXBlKSB0aHJvd3MgRXhjZXB0aW9uIHsKICAgICAgICByZXR1cm4gcy5nZXQoKTsKICAgIH0KICAgIGludGVyZmFjZSBTb3VyY2UgZXh0ZW5kcyBTdXBwbGllcjxTdHJpbmc+LCBBdXRvQ2xvc2VhYmxlIHsKICAgICAgICBwdWJsaWMgZGVmYXVsdCB2b2lkIGNsb3NlKCkgdGhyb3dzIEV4Y2VwdGlvbiB7fQogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBTdHJlYW0ub2YoIm9uZSIsICJ0d28iLCAidGhyZWUiKQogICAgICAgICAgICAgIC5tYXAocyAtPiB7CiAgICAgICAgICAgICAgICAgIHRyeShTb3VyY2Ugc291cmNlID0gKCkgLT4gcykgewogICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlYWRWYWx1ZShzb3VyY2UsIFN0cmluZy5jbGFzcyk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgY2F0Y2goRXhjZXB0aW9uIGV4KSB7CiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgLmZvckVhY2goU3lzdGVtLm91dDo6cHJpbnRsbik7CiAgICB9Cn0K