/** * @inheritDoc */ @Override public void meet(Bound theOp) throws Exception { mBuffer.append(" bound("); theOp.getArg().visit(this); mBuffer.append(")"); }
@Override public Bound visit(ASTBound node, Object data) throws VisitorException { return new Bound((Var)super.visit(node, data)); }
@Override public void meet(Bound bound) { super.meet(bound); if (bound.getArg().hasValue()) { // variable is always bound bound.replaceWith(new ValueConstant(BooleanLiteral.TRUE)); } }
public Bound(Var arg) { setArg(arg); }
@Override public void replaceChildNode(QueryModelNode current, QueryModelNode replacement) { if (arg == current) { setArg((Var)replacement); } else { super.replaceChildNode(current, replacement); } }
/** * @inheritDoc */ @Override public void meet(Bound theOp) throws Exception { mBuffer.append(" bound("); theOp.getArg().visit(this); mBuffer.append(")"); }
@Override public ValueExpr visit(ASTBound node, Object data) throws VisitorException { Var var = (Var)node.getArg().jjtAccept(this, null); return new Bound(var); }
@Override public void meet(Bound node) throws RuntimeException { ValueExpr arg = node.getArg(); builder.append("("); optypes.push(ValueType.NODE); arg.visit(this); optypes.pop(); builder.append(" IS NOT NULL)"); }
public static Bound bound(String theVar) { return new Bound(new Var(theVar)); }
@Override public boolean equals(Object other) { if (other instanceof Bound) { Bound o = (Bound)other; return arg.equals(o.getArg()); } return false; }
public GroupBuilder<T, E> bound(String theVar) { return filter(new Bound(new Var(theVar))); }
public Value evaluate(Bound node, BindingSet bindings) throws QueryEvaluationException { try { Value argValue = evaluate(node.getArg(), bindings); return BooleanLiteral.valueOf(argValue != null); } catch (ValueExprEvaluationException e) { return BooleanLiteral.FALSE; } }
String.format("Invalid number of arguments for function: %s", func)); expr = new Bound((Var)args.get(0));
@Override public void meet(Bound node) throws UnsupportedRdbmsOperatorException { result = not(isNull(new RefIdColumn(node.getArg()))); }
return new Regex(new Str(toValue(expr.getArg(0), md)), "", false); } else if (op == Ops.IS_NULL) { return new Not(new Bound(toVar(expr.getArg(0), md))); } else if (op == Ops.IS_NOT_NULL) { return new Bound(toVar(expr.getArg(0), md)); } else if (op == Ops.EXISTS) { return new Exists(toTuple(expr.getArg(0), md));
@Override public void meet(final Bound n) { emit("BOUND(").emit(n.getArg()).emit(")"); }
return new Regex(new Str(toValue(expr.getArg(0), md)), "", false); }else if (op == Ops.IS_NULL){ return new Not(new Bound(toVar(expr.getArg(0), md))); }else if (op == Ops.IS_NOT_NULL){ return new Bound(toVar(expr.getArg(0), md)); }else if (op == Ops.EXISTS){ return new Exists(toTuple(expr.getArg(0), md));
@Override public void meet(final Bound n) { emit("BOUND(").emit(n.getArg()).emit(")"); }
return new Regex(new Str(toValue(expr.getArg(0), md)), EMPTY_STRING, null); } else if (op == Ops.IS_NULL) { return new Not(new Bound(toVar(expr.getArg(0), md))); } else if (op == Ops.IS_NOT_NULL) { return new Bound(toVar(expr.getArg(0), md)); } else if (op == Ops.EXISTS) { return new Exists(toTuple(expr.getArg(0), md));