| | |
| | | |
| | | class MergedEtag { |
| | | /** |
| | | * Creates an instance of MergedEtag. |
| | | * @param {Etag} a first |
| | | * @param {Etag} b second |
| | | */ |
| | |
| | | } |
| | | } |
| | | |
| | | /** @type {WeakMap<Etag, WeakMap<Etag, MergedEtag>>} */ |
| | | const dualObjectMap = new WeakMap(); |
| | | /** @type {WeakMap<Etag, WeakMap<Etag, MergedEtag>>} */ |
| | | const objectStringMap = new WeakMap(); |
| | | |
| | | /** |
| | | * Merges the provided values into a single result. |
| | | * @param {Etag} a first |
| | | * @param {Etag} b second |
| | | * @returns {Etag} result |
| | | * @returns {string | MergedEtag} result |
| | | */ |
| | | const mergeEtags = (a, b) => { |
| | | if (typeof a === "string") { |