1) I couldn't find a ticket for it, and, based on the comment on the other answer, I filed one: https://github.com/rzwitserloot/lombok/issues/1905 So let's see :)
2) For a single collection, it seems that @Delegate
could do the job:
interface CollectionAdders<E> {
boolean add(E e);
boolean addAll(Collection<? extends E> c);
}
interface ListGetters<E> {
E get(int index);
}
class Foo {
@Delegate(types={CollectionAdders.class, ListGetters.class})
List<String> names = new ArrayList<>();
}
Generates:
Foo#add(E e)
Foo#addAll(Collection<? extends E> c)
Foo#get(int index)
See this forum post: https://groups.google.com/forum/#!topic/project-lombok/alektPraJ_Q