mirror of
https://github.com/tiennm99/lombok.git
synced 2026-10-18 16:14:08 +00:00
[builder] big refactor: Fixing CheckerFramework features + all params now in an object
These handlers had methods with humongous argument lists, and they needed to grow even more in order to accommodate some new needs to properly implement checkerframework (where annos can be type-use based, which means they were being put in the wrong place. void foo(com.foo.@X Bar paramName) // correct void foo(@X com.foo.Bar paramName) // wrong For example, the CalledMethod annotation is a type-use annotation. This commit covers both that refactor and fixing checkerframework generation.
This commit is contained in:
27 files changed
+1161
-997
No files matched your search
@@ -22,40 +22,40 @@ class CheckerFrameworkSuperBuilder {
|
||||
private int z;
|
||||
@java.lang.SuppressWarnings("all")
|
||||
private java.util.ArrayList<String> names;
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@org.checkerframework.dataflow.qual.Pure
|
||||
@java.lang.SuppressWarnings("all")
|
||||
protected abstract B self();
|
||||
@org.checkerframework.dataflow.qual.SideEffectFree
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public abstract C build(@org.checkerframework.checker.builder.qual.CalledMethods({"y", "z"}) CheckerFrameworkSuperBuilder.Parent this);
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
public abstract C build(CheckerFrameworkSuperBuilder.Parent.@org.checkerframework.checker.objectconstruction.qual.CalledMethods({"y", "z"}) ParentBuilder<C, B> this);
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public B x(@org.checkerframework.checker.builder.qual.NotCalledMethods("x") CheckerFrameworkSuperBuilder.Parent.ParentBuilder<C, B> this, final int x) {
|
||||
public B x(CheckerFrameworkSuperBuilder.Parent.@org.checkerframework.checker.objectconstruction.qual.NotCalledMethods("x") ParentBuilder<C, B> this, final int x) {
|
||||
this.x$value = x;
|
||||
x$set = true;
|
||||
return self();
|
||||
}
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public B y(@org.checkerframework.checker.builder.qual.NotCalledMethods("y") CheckerFrameworkSuperBuilder.Parent.ParentBuilder<C, B> this, final int y) {
|
||||
public B y(CheckerFrameworkSuperBuilder.Parent.@org.checkerframework.checker.objectconstruction.qual.NotCalledMethods("y") ParentBuilder<C, B> this, final int y) {
|
||||
this.y = y;
|
||||
return self();
|
||||
}
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public B z(@org.checkerframework.checker.builder.qual.NotCalledMethods("z") CheckerFrameworkSuperBuilder.Parent.ParentBuilder<C, B> this, final int z) {
|
||||
public B z(CheckerFrameworkSuperBuilder.Parent.@org.checkerframework.checker.objectconstruction.qual.NotCalledMethods("z") ParentBuilder<C, B> this, final int z) {
|
||||
this.z = z;
|
||||
return self();
|
||||
}
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public B name(final String name) {
|
||||
if (this.names == null) this.names = new java.util.ArrayList<String>();
|
||||
this.names.add(name);
|
||||
return self();
|
||||
}
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public B names(final java.util.Collection<? extends String> names) {
|
||||
if (names == null) {
|
||||
@@ -65,7 +65,7 @@ class CheckerFrameworkSuperBuilder {
|
||||
this.names.addAll(names);
|
||||
return self();
|
||||
}
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public B clearNames() {
|
||||
if (this.names != null) this.names.clear();
|
||||
@@ -80,12 +80,11 @@ class CheckerFrameworkSuperBuilder {
|
||||
}
|
||||
@java.lang.SuppressWarnings("all")
|
||||
private static final class ParentBuilderImpl extends CheckerFrameworkSuperBuilder.Parent.ParentBuilder<CheckerFrameworkSuperBuilder.Parent, CheckerFrameworkSuperBuilder.Parent.ParentBuilderImpl> {
|
||||
@org.checkerframework.common.aliasing.qual.Unique
|
||||
@java.lang.SuppressWarnings("all")
|
||||
private ParentBuilderImpl() {
|
||||
}
|
||||
@java.lang.Override
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@org.checkerframework.dataflow.qual.Pure
|
||||
@java.lang.SuppressWarnings("all")
|
||||
protected CheckerFrameworkSuperBuilder.Parent.ParentBuilderImpl self() {
|
||||
@@ -94,7 +93,7 @@ class CheckerFrameworkSuperBuilder {
|
||||
@org.checkerframework.dataflow.qual.SideEffectFree
|
||||
@java.lang.Override
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public CheckerFrameworkSuperBuilder.Parent build(@org.checkerframework.checker.builder.qual.CalledMethods({"y", "z"}) CheckerFrameworkSuperBuilder.Parent.ParentBuilderImpl this) {
|
||||
public CheckerFrameworkSuperBuilder.Parent build(CheckerFrameworkSuperBuilder.Parent.@org.checkerframework.checker.objectconstruction.qual.CalledMethods({"y", "z"}) ParentBuilderImpl this) {
|
||||
return new CheckerFrameworkSuperBuilder.Parent(this);
|
||||
}
|
||||
}
|
||||
@@ -140,24 +139,24 @@ class CheckerFrameworkSuperBuilder {
|
||||
@java.lang.SuppressWarnings("all")
|
||||
private int b;
|
||||
@java.lang.Override
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@org.checkerframework.dataflow.qual.Pure
|
||||
@java.lang.SuppressWarnings("all")
|
||||
protected abstract B self();
|
||||
@org.checkerframework.dataflow.qual.SideEffectFree
|
||||
@java.lang.Override
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public abstract C build(@org.checkerframework.checker.builder.qual.CalledMethods("b") CheckerFrameworkSuperBuilder.ZChild this);
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
public abstract C build(CheckerFrameworkSuperBuilder.ZChild.@org.checkerframework.checker.objectconstruction.qual.CalledMethods("b") ZChildBuilder<C, B> this);
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public B a(@org.checkerframework.checker.builder.qual.NotCalledMethods("a") CheckerFrameworkSuperBuilder.ZChild.ZChildBuilder<C, B> this, final int a) {
|
||||
public B a(CheckerFrameworkSuperBuilder.ZChild.@org.checkerframework.checker.objectconstruction.qual.NotCalledMethods("a") ZChildBuilder<C, B> this, final int a) {
|
||||
this.a$value = a;
|
||||
a$set = true;
|
||||
return self();
|
||||
}
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public B b(@org.checkerframework.checker.builder.qual.NotCalledMethods("b") CheckerFrameworkSuperBuilder.ZChild.ZChildBuilder<C, B> this, final int b) {
|
||||
public B b(CheckerFrameworkSuperBuilder.ZChild.@org.checkerframework.checker.objectconstruction.qual.NotCalledMethods("b") ZChildBuilder<C, B> this, final int b) {
|
||||
this.b = b;
|
||||
return self();
|
||||
}
|
||||
@@ -170,12 +169,11 @@ class CheckerFrameworkSuperBuilder {
|
||||
}
|
||||
@java.lang.SuppressWarnings("all")
|
||||
private static final class ZChildBuilderImpl extends CheckerFrameworkSuperBuilder.ZChild.ZChildBuilder<CheckerFrameworkSuperBuilder.ZChild, CheckerFrameworkSuperBuilder.ZChild.ZChildBuilderImpl> {
|
||||
@org.checkerframework.common.aliasing.qual.Unique
|
||||
@java.lang.SuppressWarnings("all")
|
||||
private ZChildBuilderImpl() {
|
||||
}
|
||||
@java.lang.Override
|
||||
@org.checkerframework.checker.builder.qual.ReturnsReceiver
|
||||
@org.checkerframework.common.returnsreceiver.qual.This
|
||||
@org.checkerframework.dataflow.qual.Pure
|
||||
@java.lang.SuppressWarnings("all")
|
||||
protected CheckerFrameworkSuperBuilder.ZChild.ZChildBuilderImpl self() {
|
||||
@@ -184,7 +182,7 @@ class CheckerFrameworkSuperBuilder {
|
||||
@org.checkerframework.dataflow.qual.SideEffectFree
|
||||
@java.lang.Override
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public CheckerFrameworkSuperBuilder.ZChild build(@org.checkerframework.checker.builder.qual.CalledMethods("b") CheckerFrameworkSuperBuilder.ZChild.ZChildBuilderImpl this) {
|
||||
public CheckerFrameworkSuperBuilder.ZChild build(CheckerFrameworkSuperBuilder.ZChild.@org.checkerframework.checker.objectconstruction.qual.CalledMethods("b") ZChildBuilderImpl this) {
|
||||
return new CheckerFrameworkSuperBuilder.ZChild(this);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user