@ProviderFor(value=JavacAnnotationHandler.class) public class HandleGetter extends JavacAnnotationHandler<Getter>
lombok.Getter
annotation for javac.Modifier and Type | Field and Description |
---|---|
static Map<lombok.javac.JavacTreeMaker.TypeTag,String> |
TYPE_MAP |
Constructor and Description |
---|
HandleGetter() |
Modifier and Type | Method and Description |
---|---|
JCMethodInvocation |
callGet(JavacNode source,
JCExpression receiver) |
JCStatement |
callSet(JavacNode source,
JCExpression receiver,
JCExpression value) |
JCExpression |
copyType(lombok.javac.JavacTreeMaker treeMaker,
JCVariableDecl fieldNode) |
JCMethodDecl |
createGetter(long access,
JavacNode field,
lombok.javac.JavacTreeMaker treeMaker,
JCTree source,
boolean lazy,
<any> onMethod) |
void |
createGetterForField(AccessLevel level,
JavacNode fieldNode,
JavacNode source,
boolean whineIfExists,
boolean lazy,
<any> onMethod) |
void |
createGetterForFields(AccessLevel level,
Collection<JavacNode> fieldNodes,
JavacNode errorNode,
boolean whineIfExists,
boolean lazy,
<any> onMethod) |
<any> |
createLazyGetterBody(lombok.javac.JavacTreeMaker maker,
JavacNode fieldNode,
JCTree source) |
<any> |
createSimpleGetterBody(lombok.javac.JavacTreeMaker treeMaker,
JavacNode field) |
boolean |
fieldQualifiesForGetterGeneration(JavacNode field) |
static <any> |
findDelegatesAndRemoveFromField(JavacNode field) |
void |
generateGetterForField(JavacNode fieldNode,
DiagnosticPosition pos,
AccessLevel level,
boolean lazy)
Generates a getter on the stated field.
|
void |
generateGetterForType(JavacNode typeNode,
JavacNode errorNode,
AccessLevel level,
boolean checkForTypeLevelGetter) |
void |
handle(AnnotationValues<Getter> annotation,
JCAnnotation ast,
JavacNode annotationNode)
Called when an annotation is found that is likely to match the annotation you're interested in.
|
getAnnotationHandledByThisHandler
public void generateGetterForType(JavacNode typeNode, JavacNode errorNode, AccessLevel level, boolean checkForTypeLevelGetter)
public boolean fieldQualifiesForGetterGeneration(JavacNode field)
public void generateGetterForField(JavacNode fieldNode, DiagnosticPosition pos, AccessLevel level, boolean lazy)
HandleData
.
The difference between this call and the handle method is as follows:
If there is a lombok.Getter
annotation on the field, it is used and the
same rules apply (e.g. warning if the method already exists, stated access level applies).
If not, the getter is still generated if it isn't already there, though there will not
be a warning if its already there. The default access level is used.fieldNode
- The node representing the field you want a getter for.pos
- The node responsible for generating the getter (the @Data
or @Getter
annotation).public void handle(AnnotationValues<Getter> annotation, JCAnnotation ast, JavacNode annotationNode)
JavacAnnotationHandler
handle
in class JavacAnnotationHandler<Getter>
annotation
- The actual annotation - use this object to retrieve the annotation parameters.ast
- The javac 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 void createGetterForFields(AccessLevel level, Collection<JavacNode> fieldNodes, JavacNode errorNode, boolean whineIfExists, boolean lazy, <any> onMethod)
public void createGetterForField(AccessLevel level, JavacNode fieldNode, JavacNode source, boolean whineIfExists, boolean lazy, <any> onMethod)
public JCMethodDecl createGetter(long access, JavacNode field, lombok.javac.JavacTreeMaker treeMaker, JCTree source, boolean lazy, <any> onMethod)
public static <any> findDelegatesAndRemoveFromField(JavacNode field)
public <any> createSimpleGetterBody(lombok.javac.JavacTreeMaker treeMaker, JavacNode field)
public <any> createLazyGetterBody(lombok.javac.JavacTreeMaker maker, JavacNode fieldNode, JCTree source)
public JCMethodInvocation callGet(JavacNode source, JCExpression receiver)
public JCStatement callSet(JavacNode source, JCExpression receiver, JCExpression value)
public JCExpression copyType(lombok.javac.JavacTreeMaker treeMaker, JCVariableDecl fieldNode)
Copyright © 2009-2015 The Project Lombok Authors, licensed under the MIT licence.