1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
import org.checkerframework.javacutil.PluginUtil;
/*
* @test
* @summary Test that inherited declaration annotations are stored in bytecode.
*
* @compile ../PersistUtil.java Driver.java ReferenceInfoUtil.java Implements.java AbstractClass.java
* @run main Driver Implements
*/
public class Implements {
@ADescriptions({
@ADescription(annotation = "org/checkerframework/checker/nullness/qual/EnsuresNonNull")
})
public String m1() {
return TestWrapper.wrap(
"public Test() { f = new Object(); }",
"@Override public void setf() { f = new Object(); }",
"@Override public void setg() {}");
}
}
class TestWrapper {
public static String wrap(String... method) {
return PluginUtil.joinLines(
"class Test extends AbstractClass {", PluginUtil.joinLines(method), "}");
}
}
|