* the j.u.List recipe is now used to singularize java.lang.Iterables.

* Code gen for builder now adheres to format options when delomboking (doesn’t generate java.lang. FQNs if you ask it not to do that).
This commit is contained in:
Reinier Zwitserloot
2015-01-30 15:49:36 +01:00
parent a7bd812893
commit 26b2fb5cd6
4 changed files with 4 additions and 4 deletions
@@ -53,7 +53,7 @@ import org.mangosdk.spi.ProviderFor;
@ProviderFor(EclipseSingularizer.class)
public class EclipseJavaUtilListSingularizer extends EclipseJavaUtilListSetSingularizer {
@Override public LombokImmutableList<String> getSupportedTypes() {
return LombokImmutableList.of("java.util.List", "java.util.Collection", "java.util.Iterable");
return LombokImmutableList.of("java.util.List", "java.util.Collection", "java.lang.Iterable");
}
@Override public void appendBuildCode(SingularData data, EclipseNode builderType, List<Statement> statements, char[] targetVariableName) {
@@ -140,7 +140,7 @@ abstract class JavacGuavaSingularizer extends JavacSingularizer {
if (mapMode) {
paramType = chainDots(builderType, "java", "util", "Map");
} else {
paramType = chainDots(builderType, "java", "lang", "Iterable");
paramType = genJavaLangTypeRef(builderType, "Iterable");
}
paramType = addTypeArgs(mapMode ? 2 : 1, true, builderType, paramType, data.getTypeArgs(), source);
JCVariableDecl param = maker.VarDef(maker.Modifiers(paramFlags), data.getPluralName(), paramType, null);
@@ -43,7 +43,7 @@ import com.sun.tools.javac.util.Name;
@ProviderFor(JavacSingularizer.class)
public class JavacJavaUtilListSingularizer extends JavacJavaUtilListSetSingularizer {
@Override public LombokImmutableList<String> getSupportedTypes() {
return LombokImmutableList.of("java.util.List", "java.util.Collection", "java.util.Iterable");
return LombokImmutableList.of("java.util.List", "java.util.Collection", "java.lang.Iterable");
}
@Override public void appendBuildCode(SingularData data, JavacNode builderType, JCTree source, ListBuffer<JCStatement> statements, Name targetVariableName) {
@@ -137,7 +137,7 @@ abstract class JavacJavaUtilSingularizer extends JavacSingularizer {
// this.varName.size() < MAX_POWER_OF_2 ? 1 + this.varName.size() + (this.varName.size() - 3) / 3 : Integer.MAX_VALUE;
// lessThanCutOff = this.varName.size() < MAX_POWER_OF_2
JCExpression lessThanCutoff = maker.Binary(CTC_LESS_THAN, getSize(maker, builderType, varName, nullGuard), maker.Literal(CTC_INT, 0x40000000));
JCExpression integerMaxValue = chainDots(builderType, "java", "lang", "Integer", "MAX_VALUE");
JCExpression integerMaxValue = genJavaLangTypeRef(builderType, "Integer", "MAX_VALUE");
JCExpression sizeFormulaLeft = maker.Binary(CTC_PLUS, maker.Literal(CTC_INT, 1), getSize(maker, builderType, varName, nullGuard));
JCExpression sizeFormulaRightLeft = maker.Binary(CTC_MINUS, getSize(maker, builderType, varName, nullGuard), maker.Literal(CTC_INT, 3));
JCExpression sizeFormulaRight = maker.Binary(CTC_DIV, sizeFormulaRightLeft, maker.Literal(CTC_INT, 3));