mirror of
https://github.com/tiennm99/lombok.git
synced 2026-10-15 18:15:59 +00:00
support for @Builder on methods with a generified return type. Fixes #1420
This commit is contained in:
1 parent
f2530ab37e
commit
d9031506b5
7 files changed
+108
-9
No files matched your search
@@ -0,0 +1,40 @@
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
class BuilderGenericMethod<T> {
|
||||
public <N extends Number> Map<N, T> foo(int a, long b) {
|
||||
return null;
|
||||
}
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public class MapBuilder<N extends Number> {
|
||||
@java.lang.SuppressWarnings("all")
|
||||
private int a;
|
||||
@java.lang.SuppressWarnings("all")
|
||||
private long b;
|
||||
@java.lang.SuppressWarnings("all")
|
||||
MapBuilder() {
|
||||
}
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public MapBuilder<N> a(final int a) {
|
||||
this.a = a;
|
||||
return this;
|
||||
}
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public MapBuilder<N> b(final long b) {
|
||||
this.b = b;
|
||||
return this;
|
||||
}
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public Map<N, T> build() {
|
||||
return BuilderGenericMethod.this.<N>foo(a, b);
|
||||
}
|
||||
@java.lang.Override
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public java.lang.String toString() {
|
||||
return "BuilderGenericMethod.MapBuilder(a=" + this.a + ", b=" + this.b + ")";
|
||||
}
|
||||
}
|
||||
@java.lang.SuppressWarnings("all")
|
||||
public <N extends Number> MapBuilder<N> builder() {
|
||||
return new MapBuilder<N>();
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user