| 488 | @clear_mutation_cache |
| 489 | @patch_docstring(RefDiGraph.reverse) |
| 490 | def reverse(self, copy=True): |
| 491 | self._convert_arrow_to_dynamic() |
| 492 | |
| 493 | if not copy: |
| 494 | g = reverse_view(self) |
| 495 | g._op = self._op |
| 496 | g._key = self._key |
| 497 | g._schema = deepcopy(self._schema) |
| 498 | g._is_client_view = True |
| 499 | else: |
| 500 | g = self.__class__(create_empty_in_engine=False) |
| 501 | g.graph = self.graph |
| 502 | g.name = self.name |
| 503 | op = dag_utils.copy_graph(self, "reverse") |
| 504 | g._op = op |
| 505 | graph_def = op.eval(leaf=False) |
| 506 | g._key = graph_def.key |
| 507 | g.cache.warmup() |
| 508 | g._session = self._session |
| 509 | return g |