aboutsummaryrefslogtreecommitdiff
path: root/src/lombok/javac/handlers/HandleGetter.java
AgeCommit message (Collapse)Author
2009-11-25Refactored the source folders.Reinier Zwitserloot
2009-10-31Made the utility methods previously located in package private 'PKG.java' in ↵Reinier Zwitserloot
lombok.eclipe.handlers and javac.eclipse.handlers public. Renamed them to more useful names, made all methods public, added some javadoc, and renamed one or two methods to be more consistent. Talked about in google groups thread http://groups.google.com/group/project-lombok/browse_thread/thread/52085a345e77c086
2009-10-18Removed some warnings.Reinier Zwitserloot
2009-10-16Switched all use of <code></code> in javadoc to {@code}.Reinier Zwitserloot
2009-10-16Fixed issue #24 by refactoring the AST.Node class - taken it out, and in the ↵Reinier Zwitserloot
process fixed a lot of type annoyance by adding more generics. Also changed coding style from for/while/if/switch/catch/do ( expr ) {} to for (expr) {}, hence the changes _everywhere_.
2009-09-03Added an AccessLevel.NONE to suppress generating getters and setters (useful ↵Reinier Zwitserloot
in combination with @Data). Addresses issue #37.
2009-08-28null checks are no longer generated if you put @NonNull on primitives.Reinier Zwitserloot
2009-08-27Now @Nullable is also copied over.Reinier Zwitserloot
2009-08-01@Setter will copy all NotNull and NonNull (case-insensitive) annotations to ↵Roel Spilker
the parameter @Getter will copy them to the getter method Added @NonNull to lombok to support null-checks in the setter
2009-07-26[TRIVIAL]Reinier Zwitserloot
2009-07-26Addresses issue #4:Reinier Zwitserloot
If boolean fields already start with a typical getter prefix (is, has, or get), lombok's @Getter will no longer generate its own prefix as well, so a field named 'hasFoo' will result in a getter named 'hasFoo()', not 'isHasFoo()'. Also, if any likely getter name already exists for a boolean, a getter will not be generated. Thus, if your field is called 'hasFoo', and you already have a method named 'isFoo', then @Getter will not generate anything (and warn, unless the getter is being generated due to @Data). This last mechanism works by taking the field name *AND* any other likely base names (defined by the field name being named as prefix+baseName, with prefix being is/has/get), and then prefixing all the likely fieldnames with is/has/get, and checking if any method with that name exists. Of course, this means weird things are going to happen if you have 2 fields named 'isFoo' and 'hasFoo', but then, you'd be a real idiot if you did that.
2009-07-12More fixes to avoid erroneous "getter/setter is already there, not ↵Reinier Zwitserloot
generating it" warnings when the getter/setter already there was in fact generated by lombok, and fixed a bug in eclipse where a boolean array's getter method would be called isFoo() instead of getFoo().
2009-07-11The setter/getter handlers now mark themselves as not wanted to be called ↵Reinier Zwitserloot
upon anymore when reporting errors. They were logging 4 or more identical warnings per problem before this change.
2009-07-06Last massive documentation dump. All basic javadoc is now done, though ↵Reinier Zwitserloot
especially the docs on the lombok annotations in the lombok package need far more massaging. Also added a feature to HandleSynchronized to not auto-generate the locker fields if a specific name is provided (because, imagine you typoed those. You'd never find it!)
2009-06-24Work on HandleData, as well as generalizing features in the the PKG class ↵Reinier Zwitserloot
and updating HandleGetter/Setter to call into it.
2009-06-21Due to a java bug, constants in enums don't work, so instead the default ↵Reinier Zwitserloot
access level for @Getter and @Setter have now just been hardcoded in GetterHandler and SetterHandler. Added ability to look up the Node object for any given AST object on Node itself, as you don't usually have the AST object. Added toString() method generating to @Data, and this required some fancy footwork in finding if we've already generated methods, and editing a generated method to fill in binding and type resolutions. HandleGetter and HandleSetter have been updated to use these features. Exceptions caused by lombok handlers show up in the eclipse error log, but now, if they are related to a CompilationUnit, also as a problem (error) on the CUD - those error log entries are easy to miss! Our ASTs can now be appended to. When you generate a new AST node, you should add it to the AST, obviously. Getter/Setter have been updated to use this.
2009-06-19Added initial support for the @Data annotation. Currently produces getters ↵Reinier Zwitserloot
and setters only, not yet a constructor, toString, hashCode, or equals. HandleGetter and HandleSetter have been updated to handle static (theoretic; you can't put annotations on static fields normally). You can now make AnnotationValue objects using just an annotationNode and a target type, as well as check if a given annotationNode is likely to represent a target annotation type. This is in Javac and Eclipse classes. HandleGetter and HandleSetter can now be asked to make a getter/setter, and will grab access level off of a Getter/Setter annotation, if present.
2009-06-17AnnotationHandlers can now return a boolean to set if they actually handled ↵Reinier Zwitserloot
the annotation or not (previously, the presumption was they always handled the annotation). This is very useful for PrintAST on eclipse, because before this change, you'd never see method contents (as the initial dietParse would come first). Now Eclipse PrintASTHandler will skip any non-full runs, and only print non-diet. It then returns true only if it printed.
2009-06-17Added 'does setX/getX already exist' check to javac's HandleGetter/Setter. ↵Reinier Zwitserloot
If they exist (with any returntype/paramlist), no getter/setter is generated, and instead a warning is added on the annotation.
2009-06-17Added the SetterHandler for javac. Also added a way to get the SymbolTable ↵Reinier Zwitserloot
on a JavacAST.Node, because you need it to e.g. access constant types like 'void'.
2009-06-17Just renamed some parameters to more sensical names.Reinier Zwitserloot
2009-06-17Renamed the Handler implementations.Reinier Zwitserloot