@@ -294,7 +294,7 @@ namespace ts {
294
294
configFileParsingDiagnostics : ReadonlyArray < Diagnostic > ;
295
295
}
296
296
297
- export function getBuilderCreationParameters ( newProgramOrRootNames : Program | ReadonlyArray < string > | undefined , hostOrOptions : BuilderProgramHost | CompilerOptions | undefined , oldProgramOrHost ?: BuilderProgram | CompilerHost , configFileParsingDiagnosticsOrOldProgram ?: ReadonlyArray < Diagnostic > | BuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) : BuilderCreationParameters {
297
+ export function getBuilderCreationParameters ( newProgramOrRootNames : Program | ReadonlyArray < string > | undefined , hostOrOptions : BuilderProgramHost | CompilerOptions | undefined , oldProgramOrHost ?: BuilderProgram | CompilerHost , configFileParsingDiagnosticsOrOldProgram ?: ReadonlyArray < Diagnostic > | BuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > , projectReferences ?: ReadonlyArray < ProjectReference > ) : BuilderCreationParameters {
298
298
let host : BuilderProgramHost ;
299
299
let newProgram : Program ;
300
300
let oldProgram : BuilderProgram ;
@@ -307,7 +307,14 @@ namespace ts {
307
307
}
308
308
else if ( isArray ( newProgramOrRootNames ) ) {
309
309
oldProgram = configFileParsingDiagnosticsOrOldProgram as BuilderProgram ;
310
- newProgram = createProgram ( newProgramOrRootNames , hostOrOptions as CompilerOptions , oldProgramOrHost as CompilerHost , oldProgram && oldProgram . getProgram ( ) , configFileParsingDiagnostics ) ;
310
+ newProgram = createProgram ( {
311
+ rootNames : newProgramOrRootNames ,
312
+ options : hostOrOptions as CompilerOptions ,
313
+ host : oldProgramOrHost as CompilerHost ,
314
+ oldProgram : oldProgram && oldProgram . getProgram ( ) ,
315
+ configFileParsingDiagnostics,
316
+ projectReferences
317
+ } ) ;
311
318
host = oldProgramOrHost as CompilerHost ;
312
319
}
313
320
else {
@@ -623,28 +630,28 @@ namespace ts {
623
630
* Create the builder to manage semantic diagnostics and cache them
624
631
*/
625
632
export function createSemanticDiagnosticsBuilderProgram ( newProgram : Program , host : BuilderProgramHost , oldProgram ?: SemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) : SemanticDiagnosticsBuilderProgram ;
626
- export function createSemanticDiagnosticsBuilderProgram ( rootNames : ReadonlyArray < string > | undefined , options : CompilerOptions | undefined , host ?: CompilerHost , oldProgram ?: SemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) : SemanticDiagnosticsBuilderProgram ;
627
- export function createSemanticDiagnosticsBuilderProgram ( newProgramOrRootNames : Program | ReadonlyArray < string > | undefined , hostOrOptions : BuilderProgramHost | CompilerOptions | undefined , oldProgramOrHost ?: CompilerHost | SemanticDiagnosticsBuilderProgram , configFileParsingDiagnosticsOrOldProgram ?: ReadonlyArray < Diagnostic > | SemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) {
628
- return createBuilderProgram ( BuilderProgramKind . SemanticDiagnosticsBuilderProgram , getBuilderCreationParameters ( newProgramOrRootNames , hostOrOptions , oldProgramOrHost , configFileParsingDiagnosticsOrOldProgram , configFileParsingDiagnostics ) ) ;
633
+ export function createSemanticDiagnosticsBuilderProgram ( rootNames : ReadonlyArray < string > | undefined , options : CompilerOptions | undefined , host ?: CompilerHost , oldProgram ?: SemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > , projectReferences ?: ReadonlyArray < ProjectReference > ) : SemanticDiagnosticsBuilderProgram ;
634
+ export function createSemanticDiagnosticsBuilderProgram ( newProgramOrRootNames : Program | ReadonlyArray < string > | undefined , hostOrOptions : BuilderProgramHost | CompilerOptions | undefined , oldProgramOrHost ?: CompilerHost | SemanticDiagnosticsBuilderProgram , configFileParsingDiagnosticsOrOldProgram ?: ReadonlyArray < Diagnostic > | SemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > , projectReferences ?: ReadonlyArray < ProjectReference > ) {
635
+ return createBuilderProgram ( BuilderProgramKind . SemanticDiagnosticsBuilderProgram , getBuilderCreationParameters ( newProgramOrRootNames , hostOrOptions , oldProgramOrHost , configFileParsingDiagnosticsOrOldProgram , configFileParsingDiagnostics , projectReferences ) ) ;
629
636
}
630
637
631
638
/**
632
639
* Create the builder that can handle the changes in program and iterate through changed files
633
640
* to emit the those files and manage semantic diagnostics cache as well
634
641
*/
635
642
export function createEmitAndSemanticDiagnosticsBuilderProgram ( newProgram : Program , host : BuilderProgramHost , oldProgram ?: EmitAndSemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) : EmitAndSemanticDiagnosticsBuilderProgram ;
636
- export function createEmitAndSemanticDiagnosticsBuilderProgram ( rootNames : ReadonlyArray < string > | undefined , options : CompilerOptions | undefined , host ?: CompilerHost , oldProgram ?: EmitAndSemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) : EmitAndSemanticDiagnosticsBuilderProgram ;
637
- export function createEmitAndSemanticDiagnosticsBuilderProgram ( newProgramOrRootNames : Program | ReadonlyArray < string > | undefined , hostOrOptions : BuilderProgramHost | CompilerOptions | undefined , oldProgramOrHost ?: CompilerHost | EmitAndSemanticDiagnosticsBuilderProgram , configFileParsingDiagnosticsOrOldProgram ?: ReadonlyArray < Diagnostic > | EmitAndSemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) {
638
- return createBuilderProgram ( BuilderProgramKind . EmitAndSemanticDiagnosticsBuilderProgram , getBuilderCreationParameters ( newProgramOrRootNames , hostOrOptions , oldProgramOrHost , configFileParsingDiagnosticsOrOldProgram , configFileParsingDiagnostics ) ) ;
643
+ export function createEmitAndSemanticDiagnosticsBuilderProgram ( rootNames : ReadonlyArray < string > | undefined , options : CompilerOptions | undefined , host ?: CompilerHost , oldProgram ?: EmitAndSemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > , projectReferences ?: ReadonlyArray < ProjectReference > ) : EmitAndSemanticDiagnosticsBuilderProgram ;
644
+ export function createEmitAndSemanticDiagnosticsBuilderProgram ( newProgramOrRootNames : Program | ReadonlyArray < string > | undefined , hostOrOptions : BuilderProgramHost | CompilerOptions | undefined , oldProgramOrHost ?: CompilerHost | EmitAndSemanticDiagnosticsBuilderProgram , configFileParsingDiagnosticsOrOldProgram ?: ReadonlyArray < Diagnostic > | EmitAndSemanticDiagnosticsBuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > , projectReferences ?: ReadonlyArray < ProjectReference > ) {
645
+ return createBuilderProgram ( BuilderProgramKind . EmitAndSemanticDiagnosticsBuilderProgram , getBuilderCreationParameters ( newProgramOrRootNames , hostOrOptions , oldProgramOrHost , configFileParsingDiagnosticsOrOldProgram , configFileParsingDiagnostics , projectReferences ) ) ;
639
646
}
640
647
641
648
/**
642
649
* Creates a builder thats just abstraction over program and can be used with watch
643
650
*/
644
651
export function createAbstractBuilder ( newProgram : Program , host : BuilderProgramHost , oldProgram ?: BuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) : BuilderProgram ;
645
- export function createAbstractBuilder ( rootNames : ReadonlyArray < string > | undefined , options : CompilerOptions | undefined , host ?: CompilerHost , oldProgram ?: BuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) : BuilderProgram ;
646
- export function createAbstractBuilder ( newProgramOrRootNames : Program | ReadonlyArray < string > | undefined , hostOrOptions : BuilderProgramHost | CompilerOptions | undefined , oldProgramOrHost ?: CompilerHost | BuilderProgram , configFileParsingDiagnosticsOrOldProgram ?: ReadonlyArray < Diagnostic > | BuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > ) : BuilderProgram {
647
- const { newProgram : program } = getBuilderCreationParameters ( newProgramOrRootNames , hostOrOptions , oldProgramOrHost , configFileParsingDiagnosticsOrOldProgram , configFileParsingDiagnostics ) ;
652
+ export function createAbstractBuilder ( rootNames : ReadonlyArray < string > | undefined , options : CompilerOptions | undefined , host ?: CompilerHost , oldProgram ?: BuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > , projectReferences ?: ReadonlyArray < ProjectReference > ) : BuilderProgram ;
653
+ export function createAbstractBuilder ( newProgramOrRootNames : Program | ReadonlyArray < string > | undefined , hostOrOptions : BuilderProgramHost | CompilerOptions | undefined , oldProgramOrHost ?: CompilerHost | BuilderProgram , configFileParsingDiagnosticsOrOldProgram ?: ReadonlyArray < Diagnostic > | BuilderProgram , configFileParsingDiagnostics ?: ReadonlyArray < Diagnostic > , projectReferences ?: ReadonlyArray < ProjectReference > ) : BuilderProgram {
654
+ const { newProgram : program } = getBuilderCreationParameters ( newProgramOrRootNames , hostOrOptions , oldProgramOrHost , configFileParsingDiagnosticsOrOldProgram , configFileParsingDiagnostics , projectReferences ) ;
648
655
return {
649
656
// Only return program, all other methods are not implemented
650
657
getProgram : ( ) => program ,
0 commit comments