| 22 | |
| 23 | /** @internal */ |
| 24 | export class EmptyNode<out K, out V> { |
| 25 | readonly _tag = "EmptyNode" |
| 26 | |
| 27 | modify( |
| 28 | edit: number, |
| 29 | _shift: number, |
| 30 | f: HashMap.UpdateFn<V>, |
| 31 | hash: number, |
| 32 | key: K, |
| 33 | size: SizeRef |
| 34 | ): Node<K, V> { |
| 35 | const v = f(O.none()) |
| 36 | if (O.isNone(v)) return new EmptyNode() |
| 37 | ++size.value |
| 38 | return new LeafNode(edit, hash, key, v) |
| 39 | } |
| 40 | } |
| 41 | |
| 42 | /** @internal */ |
| 43 | export function isEmptyNode(a: unknown): a is EmptyNode<unknown, unknown> { |
nothing calls this directly
no outgoing calls
no test coverage detected
searching dependent graphs…