MCPcopy Index your code
hub / github.com/nodejs/node / emitFilesAndReportErrors

Function emitFilesAndReportErrors

test/fixtures/snapshot/typescript.js:123025–123065  ·  view source on GitHub ↗

* Helper that emit files, report diagnostics and lists emitted and/or source files depending on compiler options

(program, reportDiagnostic, write, reportSummary, writeFile, cancellationToken, emitOnlyDtsFiles, customTransformers)

Source from the content-addressed store, hash-verified

123023 * Helper that emit files, report diagnostics and lists emitted and/or source files depending on compiler options
123024 */
123025 function emitFilesAndReportErrors(program, reportDiagnostic, write, reportSummary, writeFile, cancellationToken, emitOnlyDtsFiles, customTransformers) {
123026 var isListFilesOnly = !!program.getCompilerOptions().listFilesOnly;
123027 // First get and report any syntactic errors.
123028 var allDiagnostics = program.getConfigFileParsingDiagnostics().slice();
123029 var configFileParsingDiagnosticsLength = allDiagnostics.length;
123030 ts.addRange(allDiagnostics, program.getSyntacticDiagnostics(/*sourceFile*/ undefined, cancellationToken));
123031 // If we didn't have any syntactic errors, then also try getting the global and
123032 // semantic errors.
123033 if (allDiagnostics.length === configFileParsingDiagnosticsLength) {
123034 ts.addRange(allDiagnostics, program.getOptionsDiagnostics(cancellationToken));
123035 if (!isListFilesOnly) {
123036 ts.addRange(allDiagnostics, program.getGlobalDiagnostics(cancellationToken));
123037 if (allDiagnostics.length === configFileParsingDiagnosticsLength) {
123038 ts.addRange(allDiagnostics, program.getSemanticDiagnostics(/*sourceFile*/ undefined, cancellationToken));
123039 }
123040 }
123041 }
123042 // Emit and report any errors we ran into.
123043 var emitResult = isListFilesOnly
123044 ? { emitSkipped: true, diagnostics: ts.emptyArray }
123045 : program.emit(/*targetSourceFile*/ undefined, writeFile, cancellationToken, emitOnlyDtsFiles, customTransformers);
123046 var emittedFiles = emitResult.emittedFiles, emitDiagnostics = emitResult.diagnostics;
123047 ts.addRange(allDiagnostics, emitDiagnostics);
123048 var diagnostics = ts.sortAndDeduplicateDiagnostics(allDiagnostics);
123049 diagnostics.forEach(reportDiagnostic);
123050 if (write) {
123051 var currentDir_1 = program.getCurrentDirectory();
123052 ts.forEach(emittedFiles, function (file) {
123053 var filepath = ts.getNormalizedAbsolutePath(file, currentDir_1);
123054 write("TSFILE: ".concat(filepath));
123055 });
123056 listFiles(program, write);
123057 }
123058 if (reportSummary) {
123059 reportSummary(getErrorCountForSummary(diagnostics), getFilesInErrorForSummary(diagnostics));
123060 }
123061 return {
123062 emitResult: emitResult,
123063 diagnostics: diagnostics,
123064 };
123065 }
123066 ts.emitFilesAndReportErrors = emitFilesAndReportErrors;
123067 function emitFilesAndReportErrorsAndGetExitStatus(program, reportDiagnostic, write, reportSummary, writeFile, cancellationToken, emitOnlyDtsFiles, customTransformers) {
123068 var _a = emitFilesAndReportErrors(program, reportDiagnostic, write, reportSummary, writeFile, cancellationToken, emitOnlyDtsFiles, customTransformers), emitResult = _a.emitResult, diagnostics = _a.diagnostics;

Calls 9

listFilesFunction · 0.85
getErrorCountForSummaryFunction · 0.85
addRangeMethod · 0.80
concatMethod · 0.80
writeFunction · 0.70
sliceMethod · 0.65
forEachMethod · 0.65
emitMethod · 0.45

Tested by

no test coverage detected