1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Code streamlining.

This commit is contained in:
Sergey Prigogin 2012-01-04 20:05:07 -08:00
parent 1610de526e
commit 6da58da8f8

View file

@ -11,7 +11,7 @@
*******************************************************************************/
package org.eclipse.cdt.internal.ui.refactoring;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.eclipse.osgi.util.NLS;
@ -40,37 +40,27 @@ import org.eclipse.cdt.internal.ui.refactoring.utils.VisibilityEnum;
public class AddDeclarationNodeToClassChange {
private final ICPPASTCompositeTypeSpecifier classNode;
private final VisibilityEnum visibility;
private List<IASTNode> fieldNodes = new ArrayList<IASTNode>();
private final List<IASTNode> nodesToAdd;
private final ModificationCollector collector;
public static void createChange(ICPPASTCompositeTypeSpecifier nodeClass,
VisibilityEnum visibility, IASTNode fieldNodes, boolean isField,
public static void createChange(ICPPASTCompositeTypeSpecifier classNode,
VisibilityEnum visibility, IASTNode nodeToAdd, boolean isField,
ModificationCollector collector) {
new AddDeclarationNodeToClassChange(nodeClass, visibility, fieldNodes, collector, isField);
createChange(classNode, visibility, Collections.singletonList(nodeToAdd), isField, collector);
}
public static void createChange(ICPPASTCompositeTypeSpecifier classNode,
VisibilityEnum visibility, List<IASTNode> fieldNodes, boolean isField,
VisibilityEnum visibility, List<IASTNode> nodesToAdd, boolean isField,
ModificationCollector collector) {
new AddDeclarationNodeToClassChange(classNode, visibility, fieldNodes, collector, isField);
new AddDeclarationNodeToClassChange(classNode, visibility, nodesToAdd, collector, isField);
}
private AddDeclarationNodeToClassChange(ICPPASTCompositeTypeSpecifier classNode,
VisibilityEnum visibility, List<IASTNode> fieldNodes,
ModificationCollector collector, boolean isField) {
this.fieldNodes = fieldNodes;
this.classNode = classNode;
this.visibility = visibility;
this.collector = collector;
createRewrites(isField);
}
private AddDeclarationNodeToClassChange(ICPPASTCompositeTypeSpecifier classNode,
VisibilityEnum visibility, IASTNode fieldNodes, ModificationCollector collector,
VisibilityEnum visibility, List<IASTNode> nodesToAdd, ModificationCollector collector,
boolean isField) {
this.nodesToAdd = nodesToAdd;
this.classNode = classNode;
this.visibility = visibility;
this.fieldNodes.add(fieldNodes);
this.collector = collector;
createRewrites(isField);
}
@ -137,7 +127,7 @@ public class AddDeclarationNodeToClassChange {
private void insertBefore(IASTNode nextNode) {
ASTRewrite rewrite = collector.rewriterForTranslationUnit(nextNode.getTranslationUnit());
for (IASTNode node : fieldNodes) {
for (IASTNode node : nodesToAdd) {
rewrite.insertBefore(nextNode.getParent(), nextNode, node, createEditDescription());
}
}
@ -151,7 +141,7 @@ public class AddDeclarationNodeToClassChange {
rewrite.insertBefore(classNode, null, label, createEditDescription());
}
for (IASTNode node : fieldNodes) {
for (IASTNode node : nodesToAdd) {
rewrite.insertBefore(classNode, null, node, createEditDescription());
}
}