Files
start-os/sdk/lib/util/once.ts
2024-03-20 13:32:57 -06:00

10 lines
174 B
TypeScript

export function once<B>(fn: () => B): () => B {
let result: [B] | [] = []
return () => {
if (!result.length) {
result = [fn()]
}
return result[0]
}
}