GHHG10's picture
download
raw
392 Bytes
export function memo<T>(fn: () => T, cleanup?: (input: T) => Promise<void>) {
let value: T | undefined
let loaded = false
const result = (): T => {
if (loaded) return value as T
loaded = true
value = fn()
return value as T
}
result.reset = async () => {
if (cleanup && value) await cleanup(value)
loaded = false
value = undefined
}
return result
}

Xet Storage Details

Size:
392 Bytes
·
Xet hash:
a84a7bd537cf5d548dbef3f896e085b17c4d12734749da15ef3b883d8156dfec

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.