@Override public boolean equals(Object other) { if (other instanceof Compare && super.equals(other)) { Compare o = (Compare)other; return operator.equals(o.getOperator()); } return false; }
/** * @inheritDoc */ @Override public void meet(Compare theOp) throws Exception { mBuffer.append("("); theOp.getLeftArg().visit(this); mBuffer.append(" ").append(theOp.getOperator().getSymbol()).append(" "); theOp.getRightArg().visit(this); mBuffer.append(")"); }
/** * @inheritDoc */ @Override public void meet(Compare theOp) throws Exception { mBuffer.append("("); theOp.getLeftArg().visit(this); mBuffer.append(" ").append(theOp.getOperator().getSymbol()).append(" "); theOp.getRightArg().visit(this); mBuffer.append(")"); }
@Override public void meet(Compare cmp) throws RuntimeException { optypes.push(new OPTypeFinder(cmp).coerce()); cmp.getLeftArg().visit(this); builder.append(getSQLOperator(cmp.getOperator())); cmp.getRightArg().visit(this); optypes.pop(); }
@Override public void meet(Compare node) { handleType(SeRQO.COMPARE); handleLiteral(SeRQO.OPERATOR, node.getOperator().name()); super.meet(node); }
private void extractNegatedProperties(final ValueExpr condition, final Set<URI> negatedProperties) { if (condition instanceof And) { final And and = (And) condition; extractNegatedProperties(and.getLeftArg(), negatedProperties); extractNegatedProperties(and.getRightArg(), negatedProperties); } else if (condition instanceof Compare) { final Compare compare = (Compare) condition; Preconditions.checkArgument(compare.getOperator() == CompareOp.NE); if (compare.getLeftArg() instanceof ValueConstant) { Preconditions.checkArgument(compare.getRightArg() instanceof Var); negatedProperties.add((URI) ((ValueConstant) compare.getLeftArg()).getValue()); } else if (compare.getRightArg() instanceof ValueConstant) { Preconditions.checkArgument(compare.getLeftArg() instanceof Var); negatedProperties .add((URI) ((ValueConstant) compare.getRightArg()).getValue()); } else { fail("Unsupported path expression. Check condition node: ", condition); } } }
public Value evaluate(Compare node, BindingSet bindings) throws ValueExprEvaluationException, QueryEvaluationException { Value leftVal = evaluate(node.getLeftArg(), bindings); Value rightVal = evaluate(node.getRightArg(), bindings); return BooleanLiteral.valueOf(QueryEvaluationUtil.compare(leftVal, rightVal, node.getOperator())); }
if (condition instanceof Compare) { Compare compare = (Compare) condition; Compare.CompareOp operator = compare.getOperator(); Object leftArg = valueFieldExpr(compare.getLeftArg()); Object rightArg = valueFieldExpr(compare.getRightArg());
private static Object[] getFilterAndDistance(QueryModelNode node, String compareArgVarName) { Object[] rv = null; if(node instanceof Filter) { Filter f = (Filter) node; ValueExpr condition = f.getCondition(); if(condition instanceof Compare) { Compare compare = (Compare) condition; CompareOp op = compare.getOperator(); Literal dist = null; if(op == CompareOp.LT && compareArgVarName.equals(getVarName(compare.getLeftArg()))) { dist = getLiteral(compare.getRightArg()); } else if(op == CompareOp.GT && compareArgVarName.equals(getVarName(compare.getRightArg()))) { dist = getLiteral(compare.getLeftArg()); } rv = new Object[] {f, dist}; } } else if(node != null) { rv = getFilterAndDistance(node.getParentNode(), compareArgVarName); } return rv; }
@Override public void meet(Compare node) throws RDFHandlerException { Resource currentSubj = subject; flushPendingStatement(); handler.handleStatement( valueFactory.createStatement(subject, RDF.TYPE, toValue(node.getOperator()))); predicate = SP.ARG1_PROPERTY; node.getLeftArg().visit(this); predicate = SP.ARG2_PROPERTY; node.getRightArg().visit(this); subject = currentSubj; predicate = null; }
private void extractNegatedProperties(final ValueExpr condition, final Set<URI> negatedProperties) { if (condition instanceof And) { final And and = (And) condition; extractNegatedProperties(and.getLeftArg(), negatedProperties); extractNegatedProperties(and.getRightArg(), negatedProperties); } else if (condition instanceof Compare) { final Compare compare = (Compare) condition; check(compare.getOperator() == CompareOp.NE, "Invalid path expression"); if (compare.getLeftArg() instanceof ValueConstant) { check(compare.getRightArg() instanceof Var, "Invalid path expression"); negatedProperties.add((URI) ((ValueConstant) compare.getLeftArg()).getValue()); } else if (compare.getRightArg() instanceof ValueConstant) { check(compare.getLeftArg() instanceof Var, "Invalid path expression"); negatedProperties .add((URI) ((ValueConstant) compare.getRightArg()).getValue()); } else { fail("Unsupported path expression. Check condition node: ", condition); } } }
@Override public void meet(Compare compare) { super.meet(compare); if (compare.getOperator() == CompareOp.EQ) { ValueExpr leftArg = compare.getLeftArg(); ValueExpr rightArg = compare.getRightArg(); boolean leftIsVar = isVar(leftArg); boolean rightIsVar = isVar(rightArg); boolean leftIsResource = isResource(leftArg); boolean rightIsResource = isResource(rightArg); if (leftIsVar && rightIsResource || leftIsResource && rightIsVar || leftIsResource && rightIsResource) { SameTerm sameTerm = new SameTerm(leftArg, rightArg); compare.replaceWith(sameTerm); } } }
@Override public void meet(final Compare n) { final QueryModelNode p = n.getParentNode(); final boolean par = p instanceof Not || p instanceof MathExpr; emitIf(par, "(").emit(n.getLeftArg()).emit(" ").emit(n.getOperator().getSymbol()) .emit(" ").emit(n.getRightArg()).emitIf(par, ")"); }
@Override public void meet(final Compare n) { final QueryModelNode p = n.getParentNode(); final boolean par = p instanceof Not || p instanceof MathExpr; emitIf(par, "(").emit(n.getLeftArg()).emit(" ").emit(n.getOperator().getSymbol()) .emit(" ").emit(n.getRightArg()).emitIf(par, ")"); }
comp = ((Compare) condition).getOperator(); ValueExpr left = ((Compare) condition).getLeftArg(); ValueExpr right = ((Compare) condition).getRightArg();
comp = ((Compare) condition).getOperator(); ValueExpr left = ((Compare) condition).getLeftArg(); ValueExpr right = ((Compare) condition).getRightArg();
filter = (Filter) parent.getParentNode(); Compare compare = (Compare) parent; CompareOp op = compare.getOperator(); if(op == CompareOp.LT && compare.getLeftArg() == f) { dist = getLiteral(compare.getRightArg());
CompareOp op = compare.getOperator(); switch (op) { case EQ: