Files
ontime/apps/client/src/common/utils/lazyEvaluate.ts
T
2025-03-04 22:01:21 +01:00

13 lines
261 B
TypeScript

/**
* Allows lazy evaluation and caching of a functions result
*/
export function lazyEvaluate<T>(fn: () => T): () => T {
let result: T | undefined;
return function () {
if (result === undefined) {
result = fn();
}
return result;
};
}