protected <R, D> void visitChildren(ExpVisitor<R, D> visitor, D d) { func = visitor.visitAndUpdate(func, d); if (visitor.exitValue == null) args = visitor.visitExps(args, args.length, d); }
protected <R, D> R visit(ExpVisitor<R, D> visitor, D d) { return visitor.visitApplyExp(this, d); }