String invoke() {
    TypeElement enclosing = MoreElements.asType(executableElement.getEnclosingElement());
    String type = TypeEncoder.encodeRaw(enclosing.asType());
    switch (executableElement.getKind()) {
      case CONSTRUCTOR:
        boolean generic = !enclosing.getTypeParameters().isEmpty();
        String typeParams = generic ? "<>" : "";
        return "new " + type + typeParams;
      case METHOD:
        return type + "." + executableElement.getSimpleName();
      default:
        throw new VerifyException("Unexpected executable kind " + executableElement.getKind());
    }
  }
The Java code to invoke this constructor or method, up to just before the opening {@code (}.
value/src/main/java/com/google/auto/value/processor/Executable.java