public ValueExpressionEvaluator(ValueExpr expr, SQLBuilder parent, ValueType optype) { this.parent = parent; optypes.push(optype); if (log.isTraceEnabled()) { long start = System.currentTimeMillis(); expr.visit(this); log.trace("expression evaluated in {} ms", (System.currentTimeMillis() - start)); } else { expr.visit(this); } }
@Override public void meet(BNodeGenerator gen) throws RuntimeException { if (gen.getNodeIdExpr() != null) { // get value of argument and express it as string optypes.push(ValueType.STRING); gen.getNodeIdExpr().visit(this); optypes.pop(); } else { builder .append("'") .append( Long.toHexString(System.currentTimeMillis()) + Integer.toHexString(anonIdGenerator.nextInt(1000))) .append("'"); } }