diff --git a/supriya/contexts/core.py b/supriya/contexts/core.py index af0eb85a3..f48b8c6ba 100644 --- a/supriya/contexts/core.py +++ b/supriya/contexts/core.py @@ -9,7 +9,6 @@ import dataclasses import itertools import re -import shlex import threading from os import PathLike from typing import ( @@ -233,9 +232,6 @@ def __getstate__(self): del state["_thread_local"] return state - def __repr__(self) -> str: - return f"<{type(self).__name__} {self.boot_status.name} [{shlex.join(self.options)}]>" - def __setstate__(self, state): self.__dict__.update(state) self._lock = threading.RLock() diff --git a/supriya/contexts/nonrealtime.py b/supriya/contexts/nonrealtime.py index 623040f38..c68b25f09 100644 --- a/supriya/contexts/nonrealtime.py +++ b/supriya/contexts/nonrealtime.py @@ -6,6 +6,7 @@ import hashlib import logging import platform +import shlex import shutil import struct from contextlib import ExitStack @@ -58,6 +59,10 @@ async def __render__( **kwargs, ) + def __repr__(self) -> str: + options = dataclasses.replace(self.options, realtime=False) + return f"<{type(self).__name__} [{shlex.join(options)} -N ...]>" + ### PRIVATE METHODS ### def _free_id( diff --git a/supriya/contexts/realtime.py b/supriya/contexts/realtime.py index c50aac3fc..11764a6b3 100644 --- a/supriya/contexts/realtime.py +++ b/supriya/contexts/realtime.py @@ -5,6 +5,7 @@ import asyncio import concurrent.futures import logging +import shlex import threading import warnings from collections.abc import Sequence as SequenceABC @@ -187,6 +188,9 @@ def __contains__(self, object_: ContextObject) -> bool: return True return False + def __repr__(self) -> str: + return f"<{type(self).__name__} {self.boot_status.name} [{shlex.join(self.options)}]>" + ### PRIVATE METHODS ### def _add_node_to_children(