未验证 提交 97e5b23b 编写于 作者: A Alex Dima

Avoid excessive Promise.resolve

上级 fb043c53
......@@ -377,11 +377,11 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
// ---- BEGIN diff --------------------------------------------------------------------------
public computeDiff(originalUrl: string, modifiedUrl: string, ignoreTrimWhitespace: boolean): Promise<IDiffComputationResult | null> {
public async computeDiff(originalUrl: string, modifiedUrl: string, ignoreTrimWhitespace: boolean): Promise<IDiffComputationResult | null> {
const original = this._getModel(originalUrl);
const modified = this._getModel(modifiedUrl);
if (!original || !modified) {
return Promise.resolve(null);
return null;
}
const originalLines = original.getLinesContent();
......@@ -395,10 +395,10 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
const changes = diffComputer.computeDiff();
let identical = (changes.length > 0 ? false : this._modelsAreIdentical(original, modified));
return Promise.resolve({
return {
identical: identical,
changes: changes
});
};
}
private _modelsAreIdentical(original: ICommonModel, modified: ICommonModel): boolean {
......@@ -417,11 +417,11 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
return true;
}
public computeDirtyDiff(originalUrl: string, modifiedUrl: string, ignoreTrimWhitespace: boolean): Promise<editorCommon.IChange[] | null> {
public async computeDirtyDiff(originalUrl: string, modifiedUrl: string, ignoreTrimWhitespace: boolean): Promise<editorCommon.IChange[] | null> {
let original = this._getModel(originalUrl);
let modified = this._getModel(modifiedUrl);
if (!original || !modified) {
return Promise.resolve(null);
return null;
}
let originalLines = original.getLinesContent();
......@@ -432,7 +432,7 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
shouldIgnoreTrimWhitespace: ignoreTrimWhitespace,
shouldMakePrettyDiff: true
});
return Promise.resolve(diffComputer.computeDiff());
return diffComputer.computeDiff();
}
// ---- END diff --------------------------------------------------------------------------
......@@ -442,10 +442,10 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
private static readonly _diffLimit = 100000;
public computeMoreMinimalEdits(modelUrl: string, edits: TextEdit[]): Promise<TextEdit[]> {
public async computeMoreMinimalEdits(modelUrl: string, edits: TextEdit[]): Promise<TextEdit[]> {
const model = this._getModel(modelUrl);
if (!model) {
return Promise.resolve(edits);
return edits;
}
const result: TextEdit[] = [];
......@@ -508,28 +508,28 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
result.push({ eol: lastEol, text: '', range: { startLineNumber: 0, startColumn: 0, endLineNumber: 0, endColumn: 0 } });
}
return Promise.resolve(result);
return result;
}
// ---- END minimal edits ---------------------------------------------------------------
public computeLinks(modelUrl: string): Promise<ILink[] | null> {
public async computeLinks(modelUrl: string): Promise<ILink[] | null> {
let model = this._getModel(modelUrl);
if (!model) {
return Promise.resolve(null);
return null;
}
return Promise.resolve(computeLinks(model));
return computeLinks(model);
}
// ---- BEGIN suggest --------------------------------------------------------------------------
private static readonly _suggestionsLimit = 10000;
public textualSuggest(modelUrl: string, position: IPosition, wordDef: string, wordDefFlags: string): Promise<CompletionList | null> {
public async textualSuggest(modelUrl: string, position: IPosition, wordDef: string, wordDefFlags: string): Promise<CompletionList | null> {
const model = this._getModel(modelUrl);
if (!model) {
return Promise.resolve(null);
return null;
}
const seen: Record<string, boolean> = Object.create(null);
......@@ -563,7 +563,7 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
range: { startLineNumber: position.lineNumber, startColumn: wordUntil.startColumn, endLineNumber: position.lineNumber, endColumn: wordUntil.endColumn }
});
}
return Promise.resolve({ suggestions });
return { suggestions };
}
......@@ -571,10 +571,10 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
//#region -- word ranges --
computeWordRanges(modelUrl: string, range: IRange, wordDef: string, wordDefFlags: string): Promise<{ [word: string]: IRange[] }> {
public async computeWordRanges(modelUrl: string, range: IRange, wordDef: string, wordDefFlags: string): Promise<{ [word: string]: IRange[] }> {
let model = this._getModel(modelUrl);
if (!model) {
return Promise.resolve(Object.create(null));
return Object.create(null);
}
const wordDefRegExp = new RegExp(wordDef, wordDefFlags);
const result: { [word: string]: IRange[] } = Object.create(null);
......@@ -597,15 +597,15 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
});
}
}
return Promise.resolve(result);
return result;
}
//#endregion
public navigateValueSet(modelUrl: string, range: IRange, up: boolean, wordDef: string, wordDefFlags: string): Promise<IInplaceReplaceSupportResult | null> {
public async navigateValueSet(modelUrl: string, range: IRange, up: boolean, wordDef: string, wordDefFlags: string): Promise<IInplaceReplaceSupportResult | null> {
let model = this._getModel(modelUrl);
if (!model) {
return Promise.resolve(null);
return null;
}
let wordDefRegExp = new RegExp(wordDef, wordDefFlags);
......@@ -623,11 +623,11 @@ export class EditorSimpleWorker implements IRequestHandler, IDisposable {
let wordRange = model.getWordAtPosition({ lineNumber: range.startLineNumber, column: range.startColumn }, wordDefRegExp);
if (!wordRange) {
return Promise.resolve(null);
return null;
}
let word = model.getValueInRange(wordRange);
let result = BasicInplaceReplace.INSTANCE.navigateValueSet(range, selectionText, wordRange, word, up);
return Promise.resolve(result);
return result;
}
// ---- BEGIN foreign module support --------------------------------------------------------------------------
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册