mirror of
https://github.com/tiennm99/lombok.git
synced 2026-10-18 12:14:29 +00:00
Merge pull request #1627 from nuessgens/master
Partially fix for "A save participant caused problems" with Eclipse
This commit is contained in:
2 files changed
+14
-17
No files matched your search
@@ -24,5 +24,7 @@ Takuya Murakami <tmurakam@tmurakam.org>
|
||||
Taiki Sugawara <buzz.taiki@gmail.com>
|
||||
Thomas Darimont <thomas.darimont@gmail.com>
|
||||
Yun Zhi Lin <yun@yunspace.com>
|
||||
Christian Nüssgens <christian@nuessgens.com>
|
||||
Mateusz Matela <mateusz.matela@gmail.com>
|
||||
|
||||
By adding your name to this list, you grant full and irrevocable copyright and patent indemnity to Project Lombok and all use of Project Lombok, and you certify that you have the right to do so for all commits you add to Project Lombok.
|
||||
@@ -106,7 +106,7 @@ public class EclipsePatcher implements AgentLauncher.AgentLaunchable {
|
||||
patchHideGeneratedNodes(sm);
|
||||
patchPostCompileHookEclipse(sm);
|
||||
patchFixSourceTypeConverter(sm);
|
||||
patchDisableLombokForCodeFormatterAndCleanup(sm);
|
||||
patchDisableLombokForCodeCleanup(sm);
|
||||
patchListRewriteHandleGeneratedMethods(sm);
|
||||
patchSyntaxAndOccurrencesHighlighting(sm);
|
||||
patchSortMembersOperation(sm);
|
||||
@@ -224,13 +224,7 @@ public class EclipsePatcher implements AgentLauncher.AgentLaunchable {
|
||||
.build());
|
||||
}
|
||||
|
||||
private static void patchDisableLombokForCodeFormatterAndCleanup(ScriptManager sm) {
|
||||
sm.addScript(ScriptBuilder.setSymbolDuringMethodCall()
|
||||
.target(new MethodTarget("org.eclipse.jdt.internal.formatter.DefaultCodeFormatter", "formatCompilationUnit"))
|
||||
.callToWrap(new Hook("org.eclipse.jdt.internal.core.util.CodeSnippetParsingUtil", "parseCompilationUnit", "org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration", "char[]", "java.util.Map", "boolean"))
|
||||
.symbol("lombok.disable")
|
||||
.build());
|
||||
|
||||
private static void patchDisableLombokForCodeCleanup(ScriptManager sm) {
|
||||
sm.addScript(ScriptBuilder.exitEarly()
|
||||
.target(new MethodTarget("org.eclipse.jdt.internal.corext.fix.ControlStatementsFix$ControlStatementFinder", "visit", "boolean", "org.eclipse.jdt.core.dom.DoStatement"))
|
||||
.target(new MethodTarget("org.eclipse.jdt.internal.corext.fix.ControlStatementsFix$ControlStatementFinder", "visit", "boolean", "org.eclipse.jdt.core.dom.EnhancedForStatement"))
|
||||
@@ -349,18 +343,19 @@ public class EclipsePatcher implements AgentLauncher.AgentLaunchable {
|
||||
}
|
||||
|
||||
private static void patchFormatters(ScriptManager sm) {
|
||||
// before Eclipse Mars
|
||||
sm.addScript(ScriptBuilder.setSymbolDuringMethodCall()
|
||||
.target(new MethodTarget("org.eclipse.jdt.internal.ui.text.java.JavaFormattingStrategy", "format", "void"))
|
||||
.callToWrap(new Hook("org.eclipse.jdt.internal.corext.util.CodeFormatterUtil", "reformat", "org.eclipse.text.edits.TextEdit",
|
||||
"int", "java.lang.String", "int", "int", "int", "java.lang.String", "java.util.Map"))
|
||||
.symbol("lombok.disable").build());
|
||||
.target(new MethodTarget("org.eclipse.jdt.internal.formatter.DefaultCodeFormatter", "formatCompilationUnit"))
|
||||
.callToWrap(new Hook("org.eclipse.jdt.internal.core.util.CodeSnippetParsingUtil", "parseCompilationUnit", "org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration", "char[]", "java.util.Map", "boolean"))
|
||||
.symbol("lombok.disable")
|
||||
.build());
|
||||
|
||||
// Eclipse Mars and beyond
|
||||
sm.addScript(ScriptBuilder.setSymbolDuringMethodCall()
|
||||
.target(new MethodTarget("org.eclipse.jdt.internal.corext.fix.CodeFormatFix", "createCleanUp", "org.eclipse.jdt.ui.cleanup.ICleanUpFix",
|
||||
"org.eclipse.jdt.core.ICompilationUnit", "org.eclipse.jface.text.IRegion[]", "boolean", "boolean", "boolean", "boolean"))
|
||||
.callToWrap(new Hook("org.eclipse.jdt.internal.corext.util.CodeFormatterUtil", "reformat", "org.eclipse.text.edits.TextEdit",
|
||||
"int", "java.lang.String", "int", "java.lang.String", "java.util.Map"))
|
||||
.symbol("lombok.disable").build());
|
||||
.target(new MethodTarget("org.eclipse.jdt.internal.formatter.DefaultCodeFormatter", "parseSourceCode"))
|
||||
.callToWrap(new Hook("org.eclipse.jdt.core.dom.ASTParser", "createAST", "org.eclipse.jdt.core.dom.ASTNode", "org.eclipse.core.runtime.IProgressMonitor"))
|
||||
.symbol("lombok.disable")
|
||||
.build());
|
||||
}
|
||||
|
||||
private static void patchRefactorScripts(ScriptManager sm) {
|
||||
|
||||
Reference in new issue
Block a user