mirror of
https://github.com/tiennm99/lombok.git
synced 2026-10-15 14:16:39 +00:00
Pull useGuavaInstead logic up to JavacSingularizer
This commit is contained in:
1 parent
a633e39588
commit
f6d2933795
4 files changed
+9
-18
No files matched your search
@@ -32,6 +32,7 @@ import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import lombok.ConfigurationKeys;
|
||||
import lombok.core.LombokImmutableList;
|
||||
import lombok.core.SpiLoadUtil;
|
||||
import lombok.core.TypeLibrary;
|
||||
@@ -102,7 +103,9 @@ public class JavacSingularsRecipes {
|
||||
}
|
||||
|
||||
public JavacSingularizer getSingularizer(String fqn, JavacNode node) {
|
||||
return singularizers.get(fqn).getGuavaInsteadIfNeeded(node);
|
||||
final JavacSingularizer singularizer = singularizers.get(fqn);
|
||||
final boolean useGuavaInstead = Boolean.TRUE.equals(node.getAst().readConfiguration(ConfigurationKeys.SINGULAR_USE_GUAVA));
|
||||
return useGuavaInstead ? singularizer.getGuavaInstead(node) : singularizer;
|
||||
}
|
||||
|
||||
public static final class SingularData {
|
||||
@@ -155,7 +158,7 @@ public class JavacSingularsRecipes {
|
||||
public static abstract class JavacSingularizer {
|
||||
public abstract LombokImmutableList<String> getSupportedTypes();
|
||||
|
||||
protected JavacSingularizer getGuavaInsteadIfNeeded(JavacNode node) {
|
||||
protected JavacSingularizer getGuavaInstead(JavacNode node) {
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
@@ -45,12 +45,8 @@ import com.sun.tools.javac.util.Name;
|
||||
|
||||
abstract class JavacJavaUtilListSetSingularizer extends JavacJavaUtilSingularizer {
|
||||
|
||||
@Override
|
||||
protected JavacSingularizer getGuavaInsteadIfNeeded(JavacNode node) {
|
||||
if (useGuavaInstead(node)) {
|
||||
return guavaListSetSingularizer;
|
||||
}
|
||||
return this;
|
||||
@Override protected JavacSingularizer getGuavaInstead(JavacNode node) {
|
||||
return guavaListSetSingularizer;
|
||||
}
|
||||
|
||||
@Override public java.util.List<Name> listFieldsToBeGenerated(SingularData data, JavacNode builderType) {
|
||||
|
||||
@@ -53,12 +53,8 @@ public class JavacJavaUtilMapSingularizer extends JavacJavaUtilSingularizer {
|
||||
return LombokImmutableList.of("java.util.Map", "java.util.SortedMap", "java.util.NavigableMap");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected JavacSingularizer getGuavaInsteadIfNeeded(JavacNode node) {
|
||||
if (useGuavaInstead(node)) {
|
||||
return guavaMapSingularizer;
|
||||
}
|
||||
return this;
|
||||
@Override protected JavacSingularizer getGuavaInstead(JavacNode node) {
|
||||
return guavaMapSingularizer;
|
||||
}
|
||||
|
||||
@Override public java.util.List<Name> listFieldsToBeGenerated(SingularData data, JavacNode builderType) {
|
||||
|
||||
@@ -42,10 +42,6 @@ abstract class JavacJavaUtilSingularizer extends JavacSingularizer {
|
||||
protected final JavacSingularizer guavaListSetSingularizer = new JavacGuavaSetListSingularizer();
|
||||
protected final JavacSingularizer guavaMapSingularizer = new JavacGuavaMapSingularizer();
|
||||
|
||||
protected boolean useGuavaInstead(JavacNode node) {
|
||||
return Boolean.TRUE.equals(node.getAst().readConfiguration(ConfigurationKeys.SINGULAR_USE_GUAVA));
|
||||
}
|
||||
|
||||
protected List<JCStatement> createJavaUtilSetMapInitialCapacitySwitchStatements(JavacTreeMaker maker, SingularData data, JavacNode builderType, boolean mapMode, String emptyCollectionMethod, String singletonCollectionMethod, String targetType, JCTree source, String builderVariable) {
|
||||
List<JCExpression> jceBlank = List.nil();
|
||||
ListBuffer<JCCase> cases = new ListBuffer<JCCase>();
|
||||
|
||||
Reference in new issue
Block a user