Add CollaborationObjectCallGraph#shrinkAll() and
DeltaAliasCollector#shrink() to shrink Iterator, Entry, etc.
1 parent 7f43dbb commit 2604f9493da7590838daa432650e9c5e27a62b41
Aki Hongo authored on 24 Dec 2020
Showing 2 changed files
View
4
src/org/ntlab/deltaViewer/CollaborationObjectCallGraph.java
}
}).collect(Collectors.toList());
return sortedTpList;
}
public void shrinkAll() {
// TODO Implement shrinkAll().
}
}
View
48
src/org/ntlab/deltaViewer/DeltaAliasCollector.java
import java.util.ArrayList;
import java.util.List;
 
import org.ntlab.deltaExtractor.Alias;
import org.ntlab.deltaExtractor.Alias.AliasType;
import org.ntlab.deltaExtractor.IAliasTracker;
import org.ntlab.trace.MethodExecution;
import org.ntlab.trace.MethodInvocation;
import org.ntlab.trace.Statement;
 
/**
* Collect delta alias for MagnetRON.(Derived from DeltaAliasTracker.)
*
public void changeTrackingObject(String from, String to, boolean isSrcSide) {
}
 
public void shrink() {
// TODO Implement shrink().
List<Alias> standardMethodInvocations = collectStandardMethodInvocations(aliasList);
List<List<Alias>> invocatoinChains = collectInvocatoinChains(standardMethodInvocations);
replaceInvocatoinChains(aliasList, invocatoinChains);
}
private List<Alias> collectStandardMethodInvocations(List<Alias> aliasList) {
// TODO Implement collectStandardMethodInvocations().
for (int i = 0; i < aliasList.size(); i++) {
Alias alias = aliasList.get(i);
if (alias.getAliasType() == AliasType.RECEIVER) {
Statement st = alias.getOccurrencePoint().getStatement();
MethodInvocation methodInvocation = (MethodInvocation)st;
if (methodInvocation.getCalledMethodExecution().isCollectionType()) {
}
} else if (alias.getAliasType() == AliasType.THIS) {
if (alias.getMethodExecution().isCollectionType()) {
}
} else if (alias.getAliasType() == AliasType.RETURN_VALUE) {
if (alias.getMethodExecution().isCollectionType()) {
}
} else if (alias.getAliasType() == AliasType.METHOD_INVOCATION) {
Statement st = alias.getOccurrencePoint().getStatement();
MethodInvocation methodInvocation = (MethodInvocation)st;
if (methodInvocation.getCalledMethodExecution().isCollectionType()) {
}
}
}
return null;
}
private List<List<Alias>> collectInvocatoinChains(List<Alias> standardMethodInvocations) {
// TODO Implement collectInvocatoinChains().
return null;
}
private List<Alias> replaceInvocatoinChains(List<Alias> aliasList, List<List<Alias>> invocatoinChains) {
// TODO Implement replaceInvocatoinChains().
return null;
}
}