|
4 | 4 |
|
5 | 5 | import json
|
6 | 6 | from collections.abc import Iterable, Iterator, Mapping
|
7 |
| -from dataclasses import dataclass, field, replace |
| 7 | +from dataclasses import dataclass, field |
8 | 8 | from queue import Queue
|
9 | 9 | from typing import (
|
10 | 10 | TYPE_CHECKING,
|
@@ -290,7 +290,8 @@ def _add_node(
|
290 | 290 | else:
|
291 | 291 | node = Node(len(self._nodes), {})
|
292 | 292 | self._nodes.append(node_data)
|
293 |
| - node = replace(node, _num_out_ports=num_outs, _metadata=node_data.metadata) |
| 293 | + node._num_out_ports = num_outs |
| 294 | + node._metadata = node_data.metadata |
294 | 295 | if parent:
|
295 | 296 | self[parent].children.append(node)
|
296 | 297 |
|
@@ -322,11 +323,7 @@ def _update_port_count(
|
322 | 323 | self[node]._num_inps = num_inps
|
323 | 324 | if num_outs is not None:
|
324 | 325 | self[node]._num_outs = num_outs
|
325 |
| - node = replace(node, _num_out_ports=num_outs) |
326 |
| - parent = self[node].parent |
327 |
| - if parent is not None: |
328 |
| - pos = self[parent].children.index(node) |
329 |
| - self[parent].children[pos] = node |
| 326 | + node._num_out_ports = num_outs |
330 | 327 |
|
331 | 328 | if node.idx == self.entrypoint.idx:
|
332 | 329 | self.entrypoint = node
|
@@ -412,7 +409,7 @@ def delete_node(self, node: ToNode) -> NodeData | None:
|
412 | 409 | weight, self._nodes[node.idx] = self._nodes[node.idx], None
|
413 | 410 |
|
414 | 411 | # Free up the metadata dictionary
|
415 |
| - node = replace(node, _metadata={}) |
| 412 | + node._metadata = {} |
416 | 413 |
|
417 | 414 | self._free_nodes.append(node)
|
418 | 415 | return weight
|
|
0 commit comments