/* package whatever; // don't place package name! */
import java.io.IOException;
import java.lang.invoke.MethodHandles;
import java.util.function.Supplier;
import javax.tools.ToolProvider;
class ImplicitNullChecks {
disassembleMyself();
}
private static void disassembleMyself() {
try {
MethodHandles.lookup().unreflect(
ToolProvider.getSystemToolClassLoader()
.loadClass("com.sun.tools.javap.Main")
.
getMethod("main",
String[].
class)) .
asVarargsCollector(String[].
class) .invoke("-c", ImplicitNullChecks.class.getName());
}
catch(Throwable ex
) { ex.
printStackTrace(); } }
class Inner {}
void createInner(ImplicitNullChecks obj) {
obj.new Inner();
}
Supplier<String> s=o::toString;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CmltcG9ydCBqYXZhLmxhbmcuaW52b2tlLk1ldGhvZEhhbmRsZXM7CmltcG9ydCBqYXZhLnV0aWwuZnVuY3Rpb24uU3VwcGxpZXI7CmltcG9ydCBqYXZheC50b29scy5Ub29sUHJvdmlkZXI7CgpjbGFzcyBJbXBsaWNpdE51bGxDaGVja3MgewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgdGhyb3dzIElPRXhjZXB0aW9uLCBJbnRlcnJ1cHRlZEV4Y2VwdGlvbiB7CiAgICAgICAgZGlzYXNzZW1ibGVNeXNlbGYoKTsKICAgIH0KICAgIHByaXZhdGUgc3RhdGljIHZvaWQgZGlzYXNzZW1ibGVNeXNlbGYoKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgTWV0aG9kSGFuZGxlcy5sb29rdXAoKS51bnJlZmxlY3QoCiAgICAgICAgICAgICAgICBUb29sUHJvdmlkZXIuZ2V0U3lzdGVtVG9vbENsYXNzTG9hZGVyKCkKICAgICAgICAgICAgICAgICAgICAubG9hZENsYXNzKCJjb20uc3VuLnRvb2xzLmphdmFwLk1haW4iKQogICAgICAgICAgICAgICAgICAgIC5nZXRNZXRob2QoIm1haW4iLCBTdHJpbmdbXS5jbGFzcykpCiAgICAgICAgICAgICAgICAuYXNWYXJhcmdzQ29sbGVjdG9yKFN0cmluZ1tdLmNsYXNzKQogICAgICAgICAgICAgICAgLmludm9rZSgiLWMiLCBJbXBsaWNpdE51bGxDaGVja3MuY2xhc3MuZ2V0TmFtZSgpKTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goVGhyb3dhYmxlIGV4KSB7IGV4LnByaW50U3RhY2tUcmFjZSgpOyB9CiAgICB9CiAgICBjbGFzcyBJbm5lciB7fQogICAgdm9pZCBjcmVhdGVJbm5lcihJbXBsaWNpdE51bGxDaGVja3Mgb2JqKSB7CiAgICAgICAgb2JqLm5ldyBJbm5lcigpOwogICAgfQoKICAgIHZvaWQgbGFtYmRhKE9iamVjdCBvKSB7CiAgICAgICAgU3VwcGxpZXI8U3RyaW5nPiBzPW86OnRvU3RyaW5nOwogICAgfQp9