( callback: (...args: A) => R, options?: Options )
| 112 | * Lodash memoize is based on serialization and is only using first arguments as cache keys |
| 113 | */ |
| 114 | export function deepMemoize<A extends unknown[], R>( |
| 115 | callback: (...args: A) => R, |
| 116 | options?: Options |
| 117 | ) { |
| 118 | const deepMap = createDeepMap<R>(options); |
| 119 | |
| 120 | return function getMemoized(...args: A): R { |
| 121 | return deepMap.getOrCreate(args, () => callback(...args)); |
| 122 | }; |
| 123 | } |
| 124 | |
| 125 | export function weakMemoize<A extends object[], R>( |
| 126 | callback: (...args: A) => R |
no test coverage detected