| 68 | |
| 69 | /** @internal */ |
| 70 | export const hashMap = <Key, Value, Patch>( |
| 71 | differ: Differ.Differ<Value, Patch> |
| 72 | ): Differ.Differ<HashMap<Key, Value>, Differ.Differ.HashMap.Patch<Key, Value, Patch>> => |
| 73 | make({ |
| 74 | empty: HashMapPatch.empty(), |
| 75 | combine: (first, second) => HashMapPatch.combine(second)(first), |
| 76 | diff: (oldValue, newValue) => HashMapPatch.diff({ oldValue, newValue, differ }), |
| 77 | patch: (patch, oldValue) => HashMapPatch.patch(oldValue, differ)(patch) |
| 78 | }) |
| 79 | |
| 80 | /** @internal */ |
| 81 | export const hashSet = <Value>(): Differ.Differ<HashSet<Value>, Differ.Differ.HashSet.Patch<Value>> => |