diff options
Diffstat (limited to 'src_eclipseagent/lombok/eclipse/agent/EclipseParserTransformer.java')
-rw-r--r-- | src_eclipseagent/lombok/eclipse/agent/EclipseParserTransformer.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src_eclipseagent/lombok/eclipse/agent/EclipseParserTransformer.java b/src_eclipseagent/lombok/eclipse/agent/EclipseParserTransformer.java index 66f515bf..639573e4 100644 --- a/src_eclipseagent/lombok/eclipse/agent/EclipseParserTransformer.java +++ b/src_eclipseagent/lombok/eclipse/agent/EclipseParserTransformer.java @@ -48,9 +48,11 @@ import org.objectweb.asm.Opcodes; * 2-step parsing system, where the bodies of methods aren't filled in until its actually neccessary. Lombok * gets a chance to change the AST immediately after either step.</li> * <li>The <code>parse(MethodDeclaration, CUD)</code>, <code>parse(ConstructorDeclaration, CUD)</code> and - * <code>parse(Initializer, TypeDeclaration, CUD)</code> methods could all be theoretically called to - * flesh out just one part of a half-finished AST tree. These methods are all instrumented to call Lombok - * with the CUD before returning it to whomever wanted it filled out.</li> + * <code>parse(Initializer, TypeDeclaration, CUD)</code> methods are all instrumented to not attempt to + * complete parsing a method generated by lombok, as the source positions are obviously all wrong + * (the method content isn't in the source file!) - lombok has already filled in the complete AST. + * + * Bit24 on the flags field on all ASTNode objects is used as a marker.</li> */ class EclipseParserTransformer { private static final String COMPILER_PKG = |