awa
This commit is contained in:
31
_internal/editor/esm/vs/base/common/functional.js
Normal file
31
_internal/editor/esm/vs/base/common/functional.js
Normal file
@@ -0,0 +1,31 @@
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
/**
|
||||
* Given a function, returns a function that is only calling that function once.
|
||||
*/
|
||||
export function createSingleCallFunction(fn, fnDidRunCallback) {
|
||||
const _this = this;
|
||||
let didCall = false;
|
||||
let result;
|
||||
return function () {
|
||||
if (didCall) {
|
||||
return result;
|
||||
}
|
||||
didCall = true;
|
||||
if (fnDidRunCallback) {
|
||||
try {
|
||||
result = fn.apply(_this, arguments);
|
||||
}
|
||||
finally {
|
||||
fnDidRunCallback();
|
||||
}
|
||||
}
|
||||
else {
|
||||
result = fn.apply(_this, arguments);
|
||||
}
|
||||
return result;
|
||||
};
|
||||
}
|
||||
//# sourceMappingURL=functional.js.map
|
||||
Reference in New Issue
Block a user