List<ParseTreeNode> curr,
List<List<ParseTreeNode>> unions,
List<Selection> selsWithContext,
List<List<ParseTreeNode>> contextUnions)
{
ParseTreeNode exceptSet = null;
QueryDimension qDim = axis.getDimensions().get(dim);
List<Selection> exclusionSelections = qDim.getExclusions();
List<ParseTreeNode> exclusionNodes = new ArrayList<ParseTreeNode>();
// Check if any exclusions are selected for this dimension
// and convert them to a list of nodes and then later a set
for (Selection exclusion : exclusionSelections) {
exclusionNodes.add(toOlap4j(exclusion));
}
if (exclusionNodes.size() > 0) {
exceptSet = generateListSetCall(exclusionNodes);
}
for (Selection sel : qDim.getInclusions()) {
ParseTreeNode selectionNode = toOlap4j(sel);
// If a sort Order was specified for this dimension
// apply it for this inclusion
if (qDim.getSortOrder() != null) {
CallNode currentMemberNode = new CallNode(
null,