@Override public final boolean accept(final ASTVisitor visitor) { if (exprs.length == 0) { if (oneOf(func, COLLECTION, URI_COLLECTION) && !visitor.lock(DBLocking.COLL)) return false; } else if (!(exprs[0] instanceof Str)) { if (!visitor.lock(null)) return false; } else { final QueryInput qi = new QueryInput(string(((Str) exprs[0]).string())); if (qi.db == null && !visitor.lock(null)) return false; if (!visitor.lock(qi.db)) return false; } return super.accept(visitor); }
@Override public boolean accept(final ASTVisitor visitor) { return visitor.dynFuncCall(this) && visitAll(visitor, expr); }