From 293a4bfaf056d11256980fb55a914d47fbbcd36c Mon Sep 17 00:00:00 2001 From: Reinier Zwitserloot Date: Mon, 15 Jun 2009 20:31:25 +0200 Subject: Renamed lombok.transformations lombok.core as the purpose of this package is to contain stuff that is useful for any lombok implementation (be it e.g. javac via apt or eclipse via agent), but not annotations and other classes that are for 'end users'. --- src/lombok/apt/HandleANY_ecj.java | 1 - src/lombok/apt/PKG.java | 2 +- src/lombok/apt/Processor.java | 1 - src/lombok/core/TransformationsUtil.java | 18 ++++++++++ src/lombok/core/TypeLibrary.java | 39 ++++++++++++++++++++++ src/lombok/eclipse/HandlerLibrary.java | 2 +- src/lombok/eclipse/TypeResolver.java | 3 +- src/lombok/eclipse/handlers/HandleGetter_ecj.java | 4 +-- .../transformations/TransformationsUtil.java | 18 ---------- src/lombok/transformations/TypeLibrary.java | 39 ---------------------- 10 files changed, 62 insertions(+), 65 deletions(-) create mode 100644 src/lombok/core/TransformationsUtil.java create mode 100644 src/lombok/core/TypeLibrary.java delete mode 100644 src/lombok/transformations/TransformationsUtil.java delete mode 100644 src/lombok/transformations/TypeLibrary.java (limited to 'src') diff --git a/src/lombok/apt/HandleANY_ecj.java b/src/lombok/apt/HandleANY_ecj.java index e5a1792a..587444d9 100644 --- a/src/lombok/apt/HandleANY_ecj.java +++ b/src/lombok/apt/HandleANY_ecj.java @@ -3,7 +3,6 @@ package lombok.apt; import java.lang.annotation.Annotation; import javax.lang.model.element.Element; - import javax.tools.Diagnostic; public class HandleANY_ecj extends HandlerForCompiler { diff --git a/src/lombok/apt/PKG.java b/src/lombok/apt/PKG.java index cf04efaf..2808e31e 100644 --- a/src/lombok/apt/PKG.java +++ b/src/lombok/apt/PKG.java @@ -8,7 +8,7 @@ import javax.lang.model.element.Element; import javax.lang.model.type.TypeKind; import lombok.Lombok; -import lombok.transformations.TransformationsUtil; +import lombok.core.TransformationsUtil; class PKG { diff --git a/src/lombok/apt/Processor.java b/src/lombok/apt/Processor.java index 5cae88a0..d63ec006 100644 --- a/src/lombok/apt/Processor.java +++ b/src/lombok/apt/Processor.java @@ -7,7 +7,6 @@ import javax.annotation.processing.AbstractProcessor; import javax.annotation.processing.RoundEnvironment; import javax.annotation.processing.SupportedAnnotationTypes; import javax.annotation.processing.SupportedSourceVersion; - import javax.lang.model.SourceVersion; import javax.lang.model.element.Element; import javax.lang.model.element.TypeElement; diff --git a/src/lombok/core/TransformationsUtil.java b/src/lombok/core/TransformationsUtil.java new file mode 100644 index 00000000..0ce99d9f --- /dev/null +++ b/src/lombok/core/TransformationsUtil.java @@ -0,0 +1,18 @@ +package lombok.core; + +public class TransformationsUtil { + private TransformationsUtil() {} + + public static String toGetterName(CharSequence fieldName, boolean isBoolean) { + final String prefix = isBoolean ? "is" : "get"; + final String suffix; + + if ( fieldName.length() == 0 ) return prefix; + + char first = fieldName.charAt(0); + if ( Character.isLowerCase(first) ) + suffix = String.format("%s%s", Character.toTitleCase(first), fieldName.subSequence(1, fieldName.length())); + else suffix = fieldName.toString(); + return String.format("%s%s", prefix, suffix); + } +} diff --git a/src/lombok/core/TypeLibrary.java b/src/lombok/core/TypeLibrary.java new file mode 100644 index 00000000..c6789d7e --- /dev/null +++ b/src/lombok/core/TypeLibrary.java @@ -0,0 +1,39 @@ +package lombok.core; + +import java.util.Collection; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +public class TypeLibrary { + private final Map> simpleToQualifiedMap = new HashMap>(); + + public void addType(String fullyQualifiedTypeName) { + int idx = fullyQualifiedTypeName.lastIndexOf('.'); + if ( idx == -1 ) throw new IllegalArgumentException( + "Only fully qualified types are allowed (and stuff in the default package is not palatable to us either!)"); + + final String simpleName = fullyQualifiedTypeName.substring(idx +1); + final String packageName = fullyQualifiedTypeName.substring(0, idx); + + if ( simpleToQualifiedMap.put(fullyQualifiedTypeName, Collections.singleton(fullyQualifiedTypeName)) != null ) return; + + addToMap(simpleName, fullyQualifiedTypeName); + addToMap(packageName + ".*", fullyQualifiedTypeName); + } + + private TypeLibrary addToMap(String keyName, String fullyQualifiedTypeName) { + Set existing = simpleToQualifiedMap.get(keyName); + Set set = (existing == null) ? new HashSet() : new HashSet(existing); + set.add(fullyQualifiedTypeName); + simpleToQualifiedMap.put(keyName, Collections.unmodifiableSet(set)); + return this; + } + + public Collection findCompatible(String typeReference) { + Set result = simpleToQualifiedMap.get(typeReference); + return result == null ? Collections.emptySet() : result; + } +} diff --git a/src/lombok/eclipse/HandlerLibrary.java b/src/lombok/eclipse/HandlerLibrary.java index 3398d22b..70c7b267 100644 --- a/src/lombok/eclipse/HandlerLibrary.java +++ b/src/lombok/eclipse/HandlerLibrary.java @@ -13,8 +13,8 @@ import java.util.Map; import java.util.ServiceConfigurationError; import java.util.ServiceLoader; +import lombok.core.TypeLibrary; import lombok.eclipse.EclipseAST.Node; -import lombok.transformations.TypeLibrary; import org.eclipse.jdt.internal.compiler.ast.ArrayInitializer; import org.eclipse.jdt.internal.compiler.ast.ClassLiteralAccess; diff --git a/src/lombok/eclipse/TypeResolver.java b/src/lombok/eclipse/TypeResolver.java index 3b92199c..41618513 100644 --- a/src/lombok/eclipse/TypeResolver.java +++ b/src/lombok/eclipse/TypeResolver.java @@ -5,9 +5,8 @@ import java.util.Collections; import java.util.HashSet; import java.util.Set; -import lombok.eclipse.EclipseAST; +import lombok.core.TypeLibrary; import lombok.eclipse.EclipseAST.Node; -import lombok.transformations.TypeLibrary; import org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration; import org.eclipse.jdt.internal.compiler.ast.ImportReference; diff --git a/src/lombok/eclipse/handlers/HandleGetter_ecj.java b/src/lombok/eclipse/handlers/HandleGetter_ecj.java index 9ce8d2d9..8d00df9f 100644 --- a/src/lombok/eclipse/handlers/HandleGetter_ecj.java +++ b/src/lombok/eclipse/handlers/HandleGetter_ecj.java @@ -4,13 +4,13 @@ import java.lang.reflect.Modifier; import lombok.AccessLevel; import lombok.Getter; +import lombok.core.TransformationsUtil; import lombok.eclipse.EclipseAnnotationHandler; import lombok.eclipse.EclipseAST.Node; -import lombok.transformations.TransformationsUtil; +import org.eclipse.jdt.internal.compiler.ast.ASTNode; import org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration; import org.eclipse.jdt.internal.compiler.ast.Annotation; -import org.eclipse.jdt.internal.compiler.ast.ASTNode; import org.eclipse.jdt.internal.compiler.ast.Expression; import org.eclipse.jdt.internal.compiler.ast.FieldDeclaration; import org.eclipse.jdt.internal.compiler.ast.MethodDeclaration; diff --git a/src/lombok/transformations/TransformationsUtil.java b/src/lombok/transformations/TransformationsUtil.java deleted file mode 100644 index 7869025a..00000000 --- a/src/lombok/transformations/TransformationsUtil.java +++ /dev/null @@ -1,18 +0,0 @@ -package lombok.transformations; - -public class TransformationsUtil { - private TransformationsUtil() {} - - public static String toGetterName(CharSequence fieldName, boolean isBoolean) { - final String prefix = isBoolean ? "is" : "get"; - final String suffix; - - if ( fieldName.length() == 0 ) return prefix; - - char first = fieldName.charAt(0); - if ( Character.isLowerCase(first) ) - suffix = String.format("%s%s", Character.toTitleCase(first), fieldName.subSequence(1, fieldName.length())); - else suffix = fieldName.toString(); - return String.format("%s%s", prefix, suffix); - } -} diff --git a/src/lombok/transformations/TypeLibrary.java b/src/lombok/transformations/TypeLibrary.java deleted file mode 100644 index 9b5c8e57..00000000 --- a/src/lombok/transformations/TypeLibrary.java +++ /dev/null @@ -1,39 +0,0 @@ -package lombok.transformations; - -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; - -public class TypeLibrary { - private final Map> simpleToQualifiedMap = new HashMap>(); - - public void addType(String fullyQualifiedTypeName) { - int idx = fullyQualifiedTypeName.lastIndexOf('.'); - if ( idx == -1 ) throw new IllegalArgumentException( - "Only fully qualified types are allowed (and stuff in the default package is not palatable to us either!)"); - - final String simpleName = fullyQualifiedTypeName.substring(idx +1); - final String packageName = fullyQualifiedTypeName.substring(0, idx); - - if ( simpleToQualifiedMap.put(fullyQualifiedTypeName, Collections.singleton(fullyQualifiedTypeName)) != null ) return; - - addToMap(simpleName, fullyQualifiedTypeName); - addToMap(packageName + ".*", fullyQualifiedTypeName); - } - - private TypeLibrary addToMap(String keyName, String fullyQualifiedTypeName) { - Set existing = simpleToQualifiedMap.get(keyName); - Set set = (existing == null) ? new HashSet() : new HashSet(existing); - set.add(fullyQualifiedTypeName); - simpleToQualifiedMap.put(keyName, Collections.unmodifiableSet(set)); - return this; - } - - public Collection findCompatible(String typeReference) { - Set result = simpleToQualifiedMap.get(typeReference); - return result == null ? Collections.emptySet() : result; - } -} -- cgit