clone of repo on github
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

13 lines
234 B

export class Lazy<T> {
#value?: T;
constructor(private readonly resolver: () => Promise<T>) {}
async value(): Promise<T> {
if (!this.#value) {
this.#value = await this.resolver();
}
return this.#value;
}
}