mirror of
https://github.com/microsoft/vscode.git
synced 2026-05-02 06:21:50 +01:00
eng: move selfhost test provider as a workspace extension (#208699)
Testing #208184, closes #207756
This commit is contained in:
16
.vscode/extensions/vscode-selfhost-test-provider/src/memoize.ts
vendored
Normal file
16
.vscode/extensions/vscode-selfhost-test-provider/src/memoize.ts
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
/*---------------------------------------------------------
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*--------------------------------------------------------*/
|
||||
|
||||
export const memoizeLast = <A, T>(fn: (args: A) => T): ((args: A) => T) => {
|
||||
let last: { arg: A; result: T } | undefined;
|
||||
return arg => {
|
||||
if (last && last.arg === arg) {
|
||||
return last.result;
|
||||
}
|
||||
|
||||
const result = fn(arg);
|
||||
last = { arg, result };
|
||||
return result;
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user