1 package no.uio.ifi.refaktor.analyze.analyzers;
3 import java.util.HashSet;
7 import no.uio.ifi.refaktor.textselection.CompilationUnitTextSelection;
9 import org.eclipse.jdt.core.ICompilationUnit;
10 import org.eclipse.jdt.core.dom.Statement;
12 public class TextSelectionsGenerator {
14 private final StatementListsCreator statementsCreator;
15 private final ICompilationUnit compilationUnit;
16 private final Set<CompilationUnitTextSelection> textSelections;
18 public TextSelectionsGenerator(StatementListsCreator statementsCreator, ICompilationUnit compilationUnit) {
19 this.statementsCreator = statementsCreator;
20 this.compilationUnit = compilationUnit;
21 textSelections = new HashSet<CompilationUnitTextSelection>();
24 public static Set<CompilationUnitTextSelection> generateTextSelections(StatementListsCreator statementsCreator, ICompilationUnit compilationUnit) {
25 TextSelectionsGenerator textSelectionsGenerator = new TextSelectionsGenerator(statementsCreator, compilationUnit);
26 textSelectionsGenerator.generateTextSelections();
27 return textSelectionsGenerator.textSelections;
30 private void generateTextSelections() {
31 for (List<Statement> statements: statementsCreator.getStatementLists())
32 textSelections.addAll(TextSelectionsGeneratorHelper.generateSelectionsFromList(statements, compilationUnit));