UNPKG

@allmaps/stdlib

Version:

Allmaps Standard Library

5 lines (4 loc) 883 B
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; export declare function getPropertyFromQuadrupleCacheOrComputation<T, K0, K1, K2, K3>(cache: Map<K0, Map<K1, Map<K2, Map<K3, T>>>>, key0: K0, key1: K1, key2: K2, key3: K3, computation: () => T, checkUse?: (t: T) => boolean, checkStore?: (t: T) => boolean): T;