/** * Copy an expression. This makes a deep copy. * @return the copy of the original expression */ public Expression copy() { QuantifiedExpression qe = new QuantifiedExpression(); qe.setOperator(operator); qe.setVariableQName(variableName); qe.setRequiredType(requiredType); qe.setSequence(sequence.copy()); Expression newAction = action.copy(); qe.setAction(newAction); qe.variableName = variableName; ExpressionTool.rebindVariableReferences(newAction, this, qe); return qe; }
/** * Copy an expression. This makes a deep copy. * @return the copy of the original expression */ public Expression copy() { QuantifiedExpression qe = new QuantifiedExpression(); qe.setOperator(operator); qe.setVariableQName(variableName); qe.setRequiredType(requiredType); qe.setSequence(sequence.copy()); Expression newAction = action.copy(); qe.setAction(newAction); qe.variableName = variableName; ExpressionTool.rebindVariableReferences(newAction, this, qe); return qe; }
/** * Copy an expression. This makes a deep copy. * @return the copy of the original expression */ public Expression copy() { QuantifiedExpression qe = new QuantifiedExpression(); qe.setOperator(operator); qe.setVariableQName(variableName); qe.setRequiredType(requiredType); qe.setSequence(sequence.copy()); Expression newAction = action.copy(); qe.setAction(newAction); qe.variableName = variableName; ExpressionTool.rebindVariableReferences(newAction, this, qe); return qe; }
/** * Copy an expression. This makes a deep copy. * * @return the copy of the original expression * @param rebindings variables that need to be re-bound */ /*@NotNull*/ public Expression copy(RebindingMap rebindings) { QuantifiedExpression qe = new QuantifiedExpression(); ExpressionTool.copyLocationInfo(this, qe); qe.setOperator(operator); qe.setVariableQName(variableName); qe.setRequiredType(requiredType); qe.setSequence(getSequence().copy(rebindings)); Expression newAction = getAction().copy(rebindings); qe.setAction(newAction); qe.variableName = variableName; qe.slotNumber = slotNumber; ExpressionTool.rebindVariableReferences(newAction, this, qe); return qe; }
/** * Copy an expression. This makes a deep copy. * * @return the copy of the original expression * @param rebindings variables that need to be re-bound */ /*@NotNull*/ public Expression copy(RebindingMap rebindings) { QuantifiedExpression qe = new QuantifiedExpression(); ExpressionTool.copyLocationInfo(this, qe); qe.setOperator(operator); qe.setVariableQName(variableName); qe.setRequiredType(requiredType); qe.setSequence(getSequence().copy(rebindings)); Expression newAction = getAction().copy(rebindings); qe.setAction(newAction); qe.variableName = variableName; qe.slotNumber = slotNumber; ExpressionTool.rebindVariableReferences(newAction, this, qe); return qe; }
SingletonComparison vc = new SingletonComparison(var, singletonOperator, e1); vc.setAtomicComparer(comparer); qe.setAction(vc); return visitor.optimize(visitor.typeCheck(qe, contextItemType), contextItemType);
SingletonComparison vc = new SingletonComparison(var, singletonOperator, e1); vc.setAtomicComparer(comparer); qe.setAction(vc); return visitor.optimize(visitor.typeCheck(qe, contextItemType), contextItemType);
SingletonComparison vc = new SingletonComparison(var, singletonOperator, e1); vc.setAtomicComparer(comparer); qe.setAction(vc); return visitor.optimize(visitor.typeCheck(qe, contextItemType), contextItemType);
Expression ebv = BooleanFn.rewriteEffectiveBooleanValue(getAction(), visitor, contextItemType); if (ebv != null) { setAction(ebv); adoptChildExpression(ebv);
Expression ebv = BooleanFn.rewriteEffectiveBooleanValue(getAction(), visitor, contextItemType); if (ebv != null) { setAction(ebv); adoptChildExpression(ebv);