Merge pull request #3 from luomoyuyi/BugFixForLanguageService

Bug Fix For Language Service
This commit is contained in:
Yanzhe Du 2019-01-08 20:32:00 +08:00 committed by GitHub
commit 819cda6f9b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 21 deletions

View File

@ -35,19 +35,22 @@ var LanguageServiceFacade = /** @class */ (function () {
LanguageServiceFacade.workingWorker = new Worker(url); LanguageServiceFacade.workingWorker = new Worker(url);
LanguageServiceFacade.workingWorker.onmessage = function (ev) { LanguageServiceFacade.workingWorker.onmessage = function (ev) {
var processedResults = []; var processedResults = [];
var results = ev.data; var parseResults = ev.data;
if (parseReason === ParseReason.GetCompletionWords) { if (parseReason === ParseReason.GetCompletionWords) {
results.forEach(function (label) { parseResults.forEach(function (label) {
if (!!label) { if (!!label) {
processedResults.push({ processedResults.push({
label: label, label: label,
insertText: label,
kind: monaco_editor_1.languages.CompletionItemKind.Keyword kind: monaco_editor_1.languages.CompletionItemKind.Keyword
}); });
} }
}); });
var finalResult = { suggestions: processedResults };
resolve(finalResult);
} }
else if (parseReason === ParseReason.GetErrors) { else if (parseReason === ParseReason.GetErrors) {
results.forEach(function (err) { parseResults.forEach(function (err) {
var mark = { var mark = {
severity: monaco_editor_1.MarkerSeverity.Error, severity: monaco_editor_1.MarkerSeverity.Error,
message: err.Message, message: err.Message,
@ -58,9 +61,8 @@ var LanguageServiceFacade = /** @class */ (function () {
}; };
processedResults.push(mark); processedResults.push(mark);
}); });
resolve(processedResults);
} }
var completionItemList = { suggestions: processedResults };
resolve(completionItemList);
}; };
var source = { var source = {
code: str, code: str,

View File

@ -1 +1 @@
{"version":3,"file":"LanguageServiceFacade.js","sourceRoot":"","sources":["../../src/facade/LanguageServiceFacade.ts"],"names":[],"mappings":"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"} {"version":3,"file":"LanguageServiceFacade.js","sourceRoot":"","sources":["../../src/facade/LanguageServiceFacade.ts"],"names":[],"mappings":"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"}

View File

@ -28,7 +28,6 @@ export class LanguageServiceFacade {
private static GetParseResult = (str : string, parseReason : ParseReason) : Q.Promise<any> => { private static GetParseResult = (str : string, parseReason : ParseReason) : Q.Promise<any> => {
return Q.Promise((resolve : any) => { return Q.Promise((resolve : any) => {
if (LanguageServiceFacade.workingWorker != null) { if (LanguageServiceFacade.workingWorker != null) {
LanguageServiceFacade.workingWorker.terminate(); LanguageServiceFacade.workingWorker.terminate();
} }
@ -38,21 +37,23 @@ export class LanguageServiceFacade {
LanguageServiceFacade.workingWorker = new Worker(url); LanguageServiceFacade.workingWorker = new Worker(url);
LanguageServiceFacade.workingWorker.onmessage = (ev : MessageEvent) => { LanguageServiceFacade.workingWorker.onmessage = (ev : MessageEvent) => {
var processedResults: any = []; var processedResults: any[] = [];
var parseResults: any[] = ev.data;
var results : any[] = ev.data;
if (parseReason === ParseReason.GetCompletionWords) { if (parseReason === ParseReason.GetCompletionWords) {
results.forEach((label: string) => { parseResults.forEach((label: string) => {
if (!!label) { if (!!label) {
processedResults.push({ processedResults.push({
label: label, label: label,
insertText: label,
kind: languages.CompletionItemKind.Keyword kind: languages.CompletionItemKind.Keyword
}); });
} }
}); });
let finalResult : languages.CompletionList = {suggestions : processedResults};
resolve(finalResult);
} else if (parseReason === ParseReason.GetErrors) { } else if (parseReason === ParseReason.GetErrors) {
results.forEach((err: any) => { parseResults.forEach((err: any) => {
const mark: editor.IMarkerData = { const mark: editor.IMarkerData = {
severity: MarkerSeverity.Error, severity: MarkerSeverity.Error,
message: err.Message, message: err.Message,
@ -61,13 +62,10 @@ export class LanguageServiceFacade {
endLineNumber: err.line, endLineNumber: err.line,
endColumn: err.column endColumn: err.column
}; };
processedResults.push(mark);
processedResults.push(mark)
}); });
resolve(processedResults);
} }
let completionItemList : languages.CompletionList = {suggestions : processedResults};
resolve(completionItemList);
} }
const source = { const source = {