/var/www/greso.tech/server/nsm/node_modules/pdf-lib/src/utils
Edit: /var/www/greso.tech/server/nsm/node_modules/pdf-lib/src/utils/Cache.ts (507B)
class Cache
{
static readonly populatedBy = (populate: () => T) => new Cache(populate);
private readonly populate: () => T;
private value: T | undefined;
private constructor(populate: () => T) {
this.populate = populate;
this.value = undefined;
}
getValue(): T | undefined {
return this.value;
}
access(): T {
if (!this.value) this.value = this.populate();
return this.value;
}
invalidate(): void {
this.value = undefined;
}
}
export default Cache;