Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergey Prigogin2012-04-06 18:01:32 +0000
committerSergey Prigogin2012-04-06 18:01:32 +0000
commit2ab852ece0dc8a845643ae3e2330e70de037b359 (patch)
tree08bbd3508bd2a985b9dd362aa0acb1ca24d48cea /core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom
parent9c2b66cf03f5423013365c0db8890a801b45a876 (diff)
downloadorg.eclipse.cdt-2ab852ece0dc8a845643ae3e2330e70de037b359.tar.gz
org.eclipse.cdt-2ab852ece0dc8a845643ae3e2330e70de037b359.tar.xz
org.eclipse.cdt-2ab852ece0dc8a845643ae3e2330e70de037b359.zip
Minor code cleanup.
Diffstat (limited to 'core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom')
-rw-r--r--core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/rewrite/changegenerator/ChangeGenerator.java63
1 files changed, 31 insertions, 32 deletions
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/rewrite/changegenerator/ChangeGenerator.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/rewrite/changegenerator/ChangeGenerator.java
index 63621e08d97..61c61b34c29 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/rewrite/changegenerator/ChangeGenerator.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/rewrite/changegenerator/ChangeGenerator.java
@@ -425,43 +425,42 @@ public class ChangeGenerator extends ASTVisitor {
edit2.moveTree(-delta);
result.addChild(edit2);
edit2 = null;
+ } else if (edit2 == null) {
+ delta += TextEditUtil.delta(edit1);
+ result.addChild(edit1);
+ edit1 = null;
} else {
- int d = TextEditUtil.delta(edit1);
- if (edit2 == null) {
+ if (edit2.getExclusiveEnd() - delta <= edit1.getOffset()) {
+ edit2.moveTree(-delta);
+ result.addChild(edit2);
+ edit2 = null;
+ } else {
+ TextEdit piece = clippedEdit(edit2, new Region(-1, edit1.getOffset() + delta));
+ if (piece != null) {
+ piece.moveTree(-delta);
+ result.addChild(piece);
+ }
+ int d = TextEditUtil.delta(edit1);
+ Region region = new Region(edit1.getOffset() + delta, edit1.getLength() + d);
+ int end = endOffset(region);
+ MultiTextEdit format = new MultiTextEdit();
+ while ((piece = clippedEdit(edit2, region)) != null) {
+ format.addChild(piece);
+ // The warning "The variable edit2 may be null at this location" is bogus.
+ if (edit2.getExclusiveEnd() >= end || j >= formatEdits.length) {
+ break;
+ }
+ edit2 = formatEdits[j++];
+ }
+ if (format.hasChildren()) {
+ format.moveTree(-delta);
+ edit1 = applyEdit(format, edit1);
+ }
delta += d;
result.addChild(edit1);
edit1 = null;
- } else {
- if (edit2.getExclusiveEnd() - delta <= edit1.getOffset()) {
- edit2.moveTree(-delta);
- result.addChild(edit2);
- edit2 = null;
- } else {
- TextEdit piece = clippedEdit(edit2, new Region(-1, edit1.getOffset() + delta));
- if (piece != null) {
- piece.moveTree(-delta);
- result.addChild(piece);
- }
- Region region = new Region(edit1.getOffset() + delta, edit1.getLength() + d);
- int end = endOffset(region);
- MultiTextEdit format = new MultiTextEdit();
- while ((piece = clippedEdit(edit2, region)) != null) {
- format.addChild(piece);
- if (edit2.getExclusiveEnd() >= end || j >= formatEdits.length) {
- break;
- }
- edit2 = formatEdits[j++];
- }
- if (format.hasChildren()) {
- format.moveTree(-delta);
- edit1 = applyEdit(format, edit1);
- }
- delta += d;
- result.addChild(edit1);
- edit1 = null;
- edit2 = clippedEdit(edit2, new Region(end, Integer.MAX_VALUE - end));
- }
+ edit2 = clippedEdit(edit2, new Region(end, Integer.MAX_VALUE - end));
}
}
}

Back to the top