aboutsummaryrefslogtreecommitdiff
path: root/src/lombok/javac/JavacAST.java
AgeCommit message (Collapse)Author
2009-06-24Added proper support for changing the AST as its being visited, both removal ↵Reinier Zwitserloot
and addition. The rule is now: children traversal traverses through the tree mostly as it was when it started.
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-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-17Moved the traverse() from Eclipse/JavacAST to Eclipse/JavacAST.Node, so that ↵Reinier Zwitserloot
you can start your traversal at any point, not just from the top. Also a bugfix for endVisitStatement which passed the wrong node, and method arguments in Javac are no longer misfiled as local declarations.
2009-06-17TrivialReinier Zwitserloot
2009-06-17Error reporting now works 99% properly - the right position is being marked ↵Reinier Zwitserloot
off. The only issue is that the count by javac is being misreported (it doesn't count lombok errors).
2009-06-17Warnings and errors on specific positions works, sort of. Still missing ↵Reinier Zwitserloot
something crucial to properly make javac generate the line + the ^^^^ indicators.
2009-06-17Massive refactors. This list isn't complete, but should give you an idea:Reinier Zwitserloot
A) many things in lombok.eclipse moved to lombok.core to enable reuse with lombok.javac. B) lombok.javac works now similarly to eclipse's model: We first make big ASTs that are bidirectionally traversable, then we walk through that for annotations. C) Instead of getting an annotation instance, you now get an object that is more flexible and can e.g. give you class values in an enum as a string instead of a Class object, which may fail if that class isn't on the classpath of lombok. D) sources to the internal sun classes for javac added to /contrib.