diff options
author | Roel Spilker <r.spilker@gmail.com> | 2021-04-02 00:32:24 +0200 |
---|---|---|
committer | Roel Spilker <r.spilker@gmail.com> | 2021-04-02 00:32:24 +0200 |
commit | ff8af6164dfffa0827d12a342da35fc89d37c504 (patch) | |
tree | 0473ec9fb46bd3db150a1469111d48ed5bf9e6ca /src/eclipseAgent/lombok/launch | |
parent | 72d9bfc412f1d6f661ce3798cd97ea8821cf25a2 (diff) | |
download | lombok-ff8af6164dfffa0827d12a342da35fc89d37c504.tar.gz lombok-ff8af6164dfffa0827d12a342da35fc89d37c504.tar.bz2 lombok-ff8af6164dfffa0827d12a342da35fc89d37c504.zip |
Fixes #2803 Manual merge, hide generated code from some Eclipse refactorings
Diffstat (limited to 'src/eclipseAgent/lombok/launch')
-rwxr-xr-x | src/eclipseAgent/lombok/launch/PatchFixesHider.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/eclipseAgent/lombok/launch/PatchFixesHider.java b/src/eclipseAgent/lombok/launch/PatchFixesHider.java index 02df3f5f..bee30922 100755 --- a/src/eclipseAgent/lombok/launch/PatchFixesHider.java +++ b/src/eclipseAgent/lombok/launch/PatchFixesHider.java @@ -413,7 +413,25 @@ final class PatchFixesHider { } return result; } - + + public static boolean isRefactoringVisitorAndGenerated(org.eclipse.jdt.core.dom.ASTNode node, org.eclipse.jdt.core.dom.ASTVisitor visitor) { + if (visitor == null) return false; + + String className = visitor.getClass().getName(); + if (!(className.startsWith("org.eclipse.jdt.internal.corext.fix") || className.startsWith("org.eclipse.jdt.internal.ui.fix"))) return false; + + boolean result = false; + try { + result = ((Boolean)node.getClass().getField("$isGenerated").get(node)).booleanValue(); + if (!result && node.getParent() != null && node.getParent() instanceof org.eclipse.jdt.core.dom.QualifiedName) { + result = isGenerated(node.getParent()); + } + } catch (Exception e) { + // better to assume it isn't generated + } + return result; + } + public static boolean isListRewriteOnGeneratedNode(org.eclipse.jdt.core.dom.rewrite.ListRewrite rewrite) { return isGenerated(rewrite.getParent()); } |