From b90e3eec3cfd855b3d6751e0b56f9637f20dc8a5 Mon Sep 17 00:00:00 2001 From: Ron Buckton Date: Thu, 8 Sep 2016 16:20:18 -0700 Subject: [PATCH] Fix classifier as well. --- src/harness/harnessLanguageService.ts | 2 +- src/server/editorServices.ts | 2 +- src/services/classifier.ts | 7 +++++-- src/services/services.ts | 8 ++++---- src/services/shims.ts | 2 +- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/harness/harnessLanguageService.ts b/src/harness/harnessLanguageService.ts index 7e9fc294130..31f8a37aa3c 100644 --- a/src/harness/harnessLanguageService.ts +++ b/src/harness/harnessLanguageService.ts @@ -232,7 +232,7 @@ namespace Harness.LanguageService { } getHost() { return this.host; } getLanguageService(): ts.LanguageService { return ts.createLanguageService(this.host); } - getClassifier(): ts.Classifier { return ts.Classifier.createClassifier(); } + getClassifier(): ts.Classifier { return ts.createClassifier(); } getPreProcessedFileInfo(fileName: string, fileContents: string): ts.PreProcessedFileInfo { return ts.preProcessFile(fileContents, /* readImportFiles */ true, ts.hasJavaScriptFileExtension(fileName)); } } diff --git a/src/server/editorServices.ts b/src/server/editorServices.ts index 87e26ce2bf3..e0f9e8d5cf6 100644 --- a/src/server/editorServices.ts +++ b/src/server/editorServices.ts @@ -1566,7 +1566,7 @@ namespace ts.server { this.setCompilerOptions(defaultOpts); } this.languageService = ts.createLanguageService(this.host, this.documentRegistry); - this.classifier = ts.Classifier.createClassifier(); + this.classifier = ts.createClassifier(); } setCompilerOptions(opt: ts.CompilerOptions) { diff --git a/src/services/classifier.ts b/src/services/classifier.ts index 56c31b08a60..0c19fbc74f9 100644 --- a/src/services/classifier.ts +++ b/src/services/classifier.ts @@ -1,5 +1,4 @@ -/* @internal */ -namespace ts.Classifier { +namespace ts { /// Classifier export function createClassifier(): Classifier { const scanner = createScanner(ScriptTarget.Latest, /*skipTrivia*/ false); @@ -462,6 +461,7 @@ namespace ts.Classifier { }; } + /* @internal */ export function getSemanticClassifications(typeChecker: TypeChecker, cancellationToken: CancellationToken, sourceFile: SourceFile, classifiableNames: Map, span: TextSpan): ClassifiedSpan[] { return convertClassifications(getEncodedSemanticClassifications(typeChecker, cancellationToken, sourceFile, classifiableNames, span)); } @@ -486,6 +486,7 @@ namespace ts.Classifier { } } + /* @internal */ export function getEncodedSemanticClassifications(typeChecker: TypeChecker, cancellationToken: CancellationToken, sourceFile: SourceFile, classifiableNames: Map, span: TextSpan): Classifications { const result: number[] = []; processNode(sourceFile); @@ -614,10 +615,12 @@ namespace ts.Classifier { return result; } + /* @internal */ export function getSyntacticClassifications(cancellationToken: CancellationToken, sourceFile: SourceFile, span: TextSpan): ClassifiedSpan[] { return convertClassifications(getEncodedSyntacticClassifications(cancellationToken, sourceFile, span)); } + /* @internal */ export function getEncodedSyntacticClassifications(cancellationToken: CancellationToken, sourceFile: SourceFile, span: TextSpan): Classifications { const spanStart = span.start; const spanLength = span.length; diff --git a/src/services/services.ts b/src/services/services.ts index e0c08a670ca..084b372516d 100644 --- a/src/services/services.ts +++ b/src/services/services.ts @@ -1601,22 +1601,22 @@ namespace ts { function getSemanticClassifications(fileName: string, span: TextSpan): ClassifiedSpan[] { synchronizeHostData(); - return Classifier.getSemanticClassifications(program.getTypeChecker(), cancellationToken, getValidSourceFile(fileName), program.getClassifiableNames(), span); + return ts.getSemanticClassifications(program.getTypeChecker(), cancellationToken, getValidSourceFile(fileName), program.getClassifiableNames(), span); } function getEncodedSemanticClassifications(fileName: string, span: TextSpan): Classifications { synchronizeHostData(); - return Classifier.getEncodedSemanticClassifications(program.getTypeChecker(), cancellationToken, getValidSourceFile(fileName), program.getClassifiableNames(), span); + return ts.getEncodedSemanticClassifications(program.getTypeChecker(), cancellationToken, getValidSourceFile(fileName), program.getClassifiableNames(), span); } function getSyntacticClassifications(fileName: string, span: TextSpan): ClassifiedSpan[] { // doesn't use compiler - no need to synchronize with host - return Classifier.getSyntacticClassifications(cancellationToken, syntaxTreeCache.getCurrentSourceFile(fileName), span); + return ts.getSyntacticClassifications(cancellationToken, syntaxTreeCache.getCurrentSourceFile(fileName), span); } function getEncodedSyntacticClassifications(fileName: string, span: TextSpan): Classifications { // doesn't use compiler - no need to synchronize with host - return Classifier.getEncodedSyntacticClassifications(cancellationToken, syntaxTreeCache.getCurrentSourceFile(fileName), span); + return ts.getEncodedSyntacticClassifications(cancellationToken, syntaxTreeCache.getCurrentSourceFile(fileName), span); } function getOutliningSpans(fileName: string): OutliningSpan[] { diff --git a/src/services/shims.ts b/src/services/shims.ts index e9b214c0fdd..41b366e0857 100644 --- a/src/services/shims.ts +++ b/src/services/shims.ts @@ -986,7 +986,7 @@ namespace ts { constructor(factory: ShimFactory, private logger: Logger) { super(factory); - this.classifier = Classifier.createClassifier(); + this.classifier = createClassifier(); } public getEncodedLexicalClassifications(text: string, lexState: EndOfLineState, syntacticClassifierAbsent?: boolean): string {