@ProviderFor(value=EclipseAnnotationHandler.class) public class HandleBuilder extends EclipseAnnotationHandler<Builder>
Constructor and Description |
---|
HandleBuilder() |
Modifier and Type | Method and Description |
---|---|
EclipseNode |
findInnerClass(EclipseNode parent,
java.lang.String name) |
void |
generateBuilderFields(EclipseNode builderType,
java.util.List<lombok.eclipse.handlers.HandleBuilder.BuilderFieldData> builderFields,
org.eclipse.jdt.internal.compiler.ast.ASTNode source) |
org.eclipse.jdt.internal.compiler.ast.MethodDeclaration |
generateBuilderMethod(boolean isStatic,
java.lang.String builderMethodName,
java.lang.String builderClassName,
EclipseNode type,
org.eclipse.jdt.internal.compiler.ast.TypeParameter[] typeParams,
org.eclipse.jdt.internal.compiler.ast.ASTNode source) |
org.eclipse.jdt.internal.compiler.ast.MethodDeclaration |
generateBuildMethod(boolean isStatic,
java.lang.String name,
char[] staticName,
org.eclipse.jdt.internal.compiler.ast.TypeReference returnType,
java.util.List<lombok.eclipse.handlers.HandleBuilder.BuilderFieldData> builderFields,
EclipseNode type,
org.eclipse.jdt.internal.compiler.ast.TypeReference[] thrownExceptions,
boolean addCleaning,
org.eclipse.jdt.internal.compiler.ast.ASTNode source) |
void |
handle(AnnotationValues<Builder> annotation,
org.eclipse.jdt.internal.compiler.ast.Annotation ast,
EclipseNode annotationNode)
Called when an annotation is found that is likely to match the annotation you're interested in.
|
EclipseNode |
makeBuilderClass(boolean isStatic,
EclipseNode tdParent,
java.lang.String builderClassName,
org.eclipse.jdt.internal.compiler.ast.TypeParameter[] typeParams,
org.eclipse.jdt.internal.compiler.ast.ASTNode source) |
void |
makeSetterMethodsForBuilder(EclipseNode builderType,
lombok.eclipse.handlers.HandleBuilder.BuilderFieldData bfd,
EclipseNode sourceNode,
boolean fluent,
boolean chain) |
getAnnotationHandledByThisHandler, preHandle
public void handle(AnnotationValues<Builder> annotation, org.eclipse.jdt.internal.compiler.ast.Annotation ast, EclipseNode annotationNode)
EclipseAnnotationHandler
handle
in class EclipseAnnotationHandler<Builder>
annotation
- The actual annotation - use this object to retrieve the annotation parameters.ast
- The Eclipse AST node representing the annotation.annotationNode
- The Lombok AST wrapper around the 'ast' parameter. You can use this object
to travel back up the chain (something javac AST can't do) to the parent of the annotation, as well
as access useful methods such as generating warnings or errors focused on the annotation.public org.eclipse.jdt.internal.compiler.ast.MethodDeclaration generateBuildMethod(boolean isStatic, java.lang.String name, char[] staticName, org.eclipse.jdt.internal.compiler.ast.TypeReference returnType, java.util.List<lombok.eclipse.handlers.HandleBuilder.BuilderFieldData> builderFields, EclipseNode type, org.eclipse.jdt.internal.compiler.ast.TypeReference[] thrownExceptions, boolean addCleaning, org.eclipse.jdt.internal.compiler.ast.ASTNode source)
public org.eclipse.jdt.internal.compiler.ast.MethodDeclaration generateBuilderMethod(boolean isStatic, java.lang.String builderMethodName, java.lang.String builderClassName, EclipseNode type, org.eclipse.jdt.internal.compiler.ast.TypeParameter[] typeParams, org.eclipse.jdt.internal.compiler.ast.ASTNode source)
public void generateBuilderFields(EclipseNode builderType, java.util.List<lombok.eclipse.handlers.HandleBuilder.BuilderFieldData> builderFields, org.eclipse.jdt.internal.compiler.ast.ASTNode source)
public void makeSetterMethodsForBuilder(EclipseNode builderType, lombok.eclipse.handlers.HandleBuilder.BuilderFieldData bfd, EclipseNode sourceNode, boolean fluent, boolean chain)
public EclipseNode findInnerClass(EclipseNode parent, java.lang.String name)
public EclipseNode makeBuilderClass(boolean isStatic, EclipseNode tdParent, java.lang.String builderClassName, org.eclipse.jdt.internal.compiler.ast.TypeParameter[] typeParams, org.eclipse.jdt.internal.compiler.ast.ASTNode source)
Copyright © 2009-2015 The Project Lombok Authors, licensed under the MIT licence.