if (accessPatterns != null) {
for (AccessPattern ap : accessPatterns) {
Set<ElementSymbol> newElements = new HashSet<ElementSymbol>();
for (Iterator elems = ap.getUnsatisfied().iterator(); elems.hasNext();) {
ElementSymbol symbol = (ElementSymbol)elems.next();
Expression mapped = convertExpression(symbol, symbolMap);
newElements.addAll(ElementCollectorVisitor.getElements(mapped, true));
}
ap.setUnsatisfied(newElements);
Set<ElementSymbol> newHistory = new HashSet<ElementSymbol>();
for (Iterator elems = ap.getCurrentElements().iterator(); elems.hasNext();) {
ElementSymbol symbol = (ElementSymbol)elems.next();
Expression mapped = convertExpression(symbol, symbolMap);
newHistory.addAll(ElementCollectorVisitor.getElements(mapped, true));
}
ap.addElementHistory(newHistory);
}
Collections.sort(accessPatterns);