public static void gen() {
    Compiler c = new Compiler();
    // VisitorBaseGen baseGen = new VisitorBaseGen(true);
    VisitorBaseGen baseGen = new VisitorBaseGen(false);

    for (int nest = 0; nest <= 1; nest++) {
      for (int len = 1; len <= 3; len++) {
        List<MethodDecl> decls;
        if (nest == 1) {
          decls = getMethodDecls(nest, len, true);
          baseGen.addAll(decls);
        } else {
          decls = getMethodDecls(nest, len, false);
          baseGen.addAll(decls);
        }
      }
    }
    String visitorImpl = VisitorCodeGen.visitorPackage + ".VisitorImpl";
    boolean success = c.compile(visitorImpl, baseGen.generate());
    if (!success) {
      String msg = "Cannot compile VisitorImpl class";
      System.out.println(c.getErrorMsg());
      throw new SociaLiteException(msg);
    }
  }