use of org.sirix.service.xml.xpath.expr.IntersectAxis in project sirix by sirixdb.
the class PipelineBuilder method addIntExcExpression.
/**
* Adds a intersect or a exception expression to the pipeline.
*
* @param mTransaction Transaction to operate with.
* @param mIsIntersect true, if expression is an intersection
*/
public void addIntExcExpression(final XdmNodeReadTrx mTransaction, final boolean mIsIntersect) {
assert getPipeStack().size() >= 2;
final XdmNodeReadTrx rtx = mTransaction;
final Axis mOperand2 = getPipeStack().pop().getExpr();
final Axis mOperand1 = getPipeStack().pop().getExpr();
final Axis axis = mIsIntersect ? new IntersectAxis(rtx, mOperand1, mOperand2) : new ExceptAxis(rtx, mOperand1, mOperand2);
if (getPipeStack().empty() || getExpression().getSize() != 0) {
addExpressionSingle();
}
getExpression().add(axis);
}
Aggregations