@allmaps/stdlib
Version:
Allmaps Standard Library
4 lines (3 loc) • 623 B
TypeScript
export declare function getPropertyFromCacheOrComputation<T, K>(cache: Map<K, T>, key: K, computation: () => T, checkUse?: (t: T) => boolean, checkStore?: (t: T) => boolean): T;
export declare function getPropertyFromDoubleCacheOrComputation<T, K0, K1>(cache: Map<K0, Map<K1, T>>, key0: K0, key1: K1, computation: () => T, checkUse?: (t: T) => boolean, checkStore?: (t: T) => boolean): T;
export declare function getPropertyFromTripleCacheOrComputation<T, K0, K1, K2>(cache: Map<K0, Map<K1, Map<K2, T>>>, key0: K0, key1: K1, key2: K2, computation: () => T, checkUse?: (t: T) => boolean, checkStore?: (t: T) => boolean): T;