(self)
| 315 | _transform_inv = _transform |
| 316 | |
| 317 | def link(self) -> None: |
| 318 | try: |
| 319 | setattr( |
| 320 | self.target[0], |
| 321 | self.target[1], |
| 322 | self._transform(getattr(self.source[0], self.source[1])), |
| 323 | ) |
| 324 | |
| 325 | finally: |
| 326 | self.source[0].observe(self._update_target, names=self.source[1]) |
| 327 | self.target[0].observe(self._update_source, names=self.target[1]) |
| 328 | |
| 329 | @contextlib.contextmanager |
| 330 | def _busy_updating(self) -> t.Any: |