mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-08-26 03:13:40 +07:00
Project Coin try-with-resource support, take 4
This commit is contained in:
+6
-8
@@ -14,24 +14,22 @@ class C {
|
||||
try (MyResource r = new MyResource()) { r.doSomething(); }
|
||||
catch (E1 | E2 | E3 ignore) { }
|
||||
|
||||
try (new MyResource()) { }
|
||||
try (MyResource r = new MyResource()) { }
|
||||
catch (E1 | E3 ignore) { }
|
||||
|
||||
MyResource r;
|
||||
|
||||
try (<error descr="Unhandled exception from auto-closeable resource: C.E3">r = new MyResource()</error>) { }
|
||||
try (<error descr="Unhandled exception from auto-closeable resource: C.E3">MyResource r = new MyResource()</error>) { }
|
||||
catch (E1 e) { }
|
||||
|
||||
try (r = <error descr="Unhandled exception: C.E1">new MyResource()</error>) { }
|
||||
try (MyResource r = <error descr="Unhandled exception: C.E1">new MyResource()</error>) { }
|
||||
catch (E3 e) { }
|
||||
|
||||
try (r = <error descr="Unhandled exception: C.E1">new MyResource()</error>) { }
|
||||
try (MyResource r = <error descr="Unhandled exception: C.E1">new MyResource()</error>) { }
|
||||
}
|
||||
|
||||
void m2() throws Exception {
|
||||
try (<error descr="Incompatible types. Found: 'java.lang.Object', required: 'java.lang.AutoCloseable'">Object r = new MyResource()</error>) { }
|
||||
|
||||
try (<error descr="Incompatible types. Found: 'java.lang.String', required: 'java.lang.AutoCloseable'">"resource"</error>) { }
|
||||
try (<error descr="Incompatible types. Found: 'java.lang.String', required: 'java.lang.AutoCloseable'">AutoCloseable r = "resource"</error>) { }
|
||||
}
|
||||
|
||||
void m3(int p) throws Exception {
|
||||
@@ -56,7 +54,7 @@ class C {
|
||||
|
||||
MyResource r = null;
|
||||
try (MyResource <error descr="Variable 'r' is already defined in the scope">r</error> = new MyResource()) { }
|
||||
try (r = new MyResource()) { }
|
||||
try (MyResource rr = r) { }
|
||||
|
||||
try (MyResource <error descr="Variable 'p' is already defined in the scope">p</error> = new MyResource()) { }
|
||||
new Runnable() {
|
||||
|
||||
+12
-19
@@ -6,35 +6,28 @@ class C {
|
||||
}
|
||||
|
||||
void m1() throws Exception {
|
||||
MyResource r1;
|
||||
try (r1 = new MyResource()) {
|
||||
try (MyResource r1 = new MyResource()) {
|
||||
System.out.println(r1);
|
||||
}
|
||||
|
||||
try (MyResource r2 = new MyResource()) {
|
||||
System.out.println(r2);
|
||||
}
|
||||
|
||||
MyResource r3 = new MyResource();
|
||||
try (MyResource r = r3) {
|
||||
MyResource r2 = new MyResource();
|
||||
try (MyResource r = r2) {
|
||||
System.out.println(r);
|
||||
System.out.println(r2);
|
||||
}
|
||||
}
|
||||
|
||||
void m2() throws Exception {
|
||||
MyResource r1 = <warning descr="Variable 'r1' initializer 'null' is redundant">null</warning>;
|
||||
try (r1 = new MyResource()) {
|
||||
System.out.println(r1);
|
||||
}
|
||||
// todo: test in IG
|
||||
//MyResource < warning descr="Local variable 'r1' is redundant">r1</warning> = null;
|
||||
//try (MyResource r = r1) {
|
||||
// System.out.println(r);
|
||||
//}
|
||||
|
||||
MyResource r2 = null;
|
||||
System.out.println(r2);
|
||||
try (r2 = <warning descr="The value 'new MyResource()' assigned to r2 is never used">new MyResource()</warning>) { }
|
||||
try (MyResource <warning descr="Variable 'r2' is never used">r2</warning> = new MyResource()) { }
|
||||
|
||||
try (MyResource <warning descr="Variable 'r3' is never used">r3</warning> = new MyResource()) { }
|
||||
|
||||
MyResource <warning descr="Variable 'r4' is never assigned">r4</warning>;
|
||||
try (MyResource r = <error descr="Variable 'r4' might not have been initialized">r4</error>) {
|
||||
MyResource <warning descr="Variable 'r3' is never assigned">r3</warning>;
|
||||
try (MyResource r = <error descr="Variable 'r3' might not have been initialized">r3</error>) {
|
||||
System.out.println(r);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user