Stores values by tuple keys while using WeakMap for object elements so the
cache can release entries when those objects are collected.
new WeakTupleMap(): WeakTupleMap<K, V>WeakTupleMap<K, V>cachedProvide(compute, thisArg, args): VMemoizes compute(thisArg, ...args) under the tuple key [compute, ...args], computing it on a miss. Equivalent to provide(compute, ...args, () => compute(thisArg, ...args)) but without allocating that closure (or an
extra rest array) on every call — ModuleGraph#cached runs this on hot
paths where most calls hit the cache and the closure would be pure waste.
clear(): voidvoidClears the stored value and all strong and weak child maps from this node.
delete(...args?): voidKvoidRemoves the value stored for the tuple key without pruning the trie.
get
get(...args?): V | undefinedKV | undefinedReturns the value stored for the exact tuple key, if any.
has
has(...args?): booleanKbooleanChecks whether the exact tuple key has a stored value.
provide(...args?): V[K, ...((args: K) => V)[]]VReturns an existing value for the tuple or computes, stores, and returns a new one when the tuple is missing.
set
set(...args?): void[K, ...V[]]voidStores a value at the node identified by the provided tuple key.