@@ -7040,24 +7040,7 @@ module ts {
7040
7040
}
7041
7041
7042
7042
function getDeclarationDiagnosticsFromSourceFile ( targetSourceFile : SourceFile ) : Diagnostic [ ] {
7043
- var resolver : EmitResolver = {
7044
- getProgram : ( ) => program ,
7045
- getLocalNameOfContainer : getLocalNameOfContainer ,
7046
- getExpressionNamePrefix : getExpressionNamePrefix ,
7047
- getExportAssignmentName : getExportAssignmentName ,
7048
- isReferencedImportDeclaration : isReferencedImportDeclaration ,
7049
- getNodeCheckFlags : getNodeCheckFlags ,
7050
- getEnumMemberValue : getEnumMemberValue ,
7051
- isTopLevelValueImportedViaEntityName : isTopLevelValueImportedViaEntityName ,
7052
- hasSemanticErrors : hasSemanticErrors ,
7053
- isDeclarationVisible : isDeclarationVisible ,
7054
- isImplementationOfOverload : isImplementationOfOverload ,
7055
- writeTypeAtLocation : writeTypeAtLocation ,
7056
- writeReturnTypeOfSignatureDeclaration : writeReturnTypeOfSignatureDeclaration ,
7057
- isSymbolAccessible : isSymbolAccessible ,
7058
- isImportDeclarationEntityNameReferenceDeclarationVisible : isImportDeclarationEntityNameReferenceDeclarationVisible ,
7059
- getConstantValue : getConstantValue ,
7060
- } ;
7043
+ var resolver = createResolver ( ) ;
7061
7044
checkProgram ( ) ;
7062
7045
return getDeclarationDiagnostics ( program , resolver , targetSourceFile ) ;
7063
7046
}
@@ -7703,8 +7686,8 @@ module ts {
7703
7686
writeType ( getReturnTypeOfSignature ( signature ) , writer , enclosingDeclaration , flags ) ;
7704
7687
}
7705
7688
7706
- function invokeEmitter ( targetSourceFile ?: SourceFile ) {
7707
- var resolver : EmitResolver = {
7689
+ function createResolver ( ) : EmitResolver {
7690
+ return {
7708
7691
getProgram : ( ) => program ,
7709
7692
getLocalNameOfContainer : getLocalNameOfContainer ,
7710
7693
getExpressionNamePrefix : getExpressionNamePrefix ,
@@ -7721,7 +7704,11 @@ module ts {
7721
7704
isSymbolAccessible : isSymbolAccessible ,
7722
7705
isImportDeclarationEntityNameReferenceDeclarationVisible : isImportDeclarationEntityNameReferenceDeclarationVisible ,
7723
7706
getConstantValue : getConstantValue ,
7724
- } ;
7707
+ }
7708
+ }
7709
+
7710
+ function invokeEmitter ( targetSourceFile ?: SourceFile ) {
7711
+ var resolver = createResolver ( ) ;
7725
7712
checkProgram ( ) ;
7726
7713
return emitFiles ( resolver , targetSourceFile ) ;
7727
7714
}
0 commit comments